说明网
编程开发 2 个回答

如何用Python编写一个通讯录并使用正则表达式进行处理?

dabofeng 提问者

发布于 2024-07-12

问题补充

编写一个通讯录程序,该程序能够存储、查询和删除联系人信息,并且在查询和删除操作中使用正则表达式来匹配联系人的姓名。

2 个回答

按发布时间排序
jacky0752 回答者

回答于 2024-09-24

在Python中,我们可以使用字典来创建一个通讯录,并使用正则表达式来处理输入的字符串。以下是一个简单的示例:

import re

# 创建一个空的通讯录
contacts = {}

def add_contact(name, phone):
    """添加联系人到通讯录"""
    if not re.match(r'^\d{10}$', phone):
        print("电话号码格式错误,请确保电话号码为10位数字")
        return
    contacts[name] = phone
    print(f"联系人 {name} 已添加到通讯录")

def find_contact(name):
    """查找联系人的电话号码"""
    if name in contacts:
        print(f"{name} 的电话号码是 {contacts[name]}")
    else:
        print(f"未找到联系人 {name}")

def main():
    while True:
        action = input("请输入操作(add/find/exit):")
        if action == "add":
            name = input("请输入联系人姓名:")
            phone = input("请输入联系人电话号码:")
            add_contact(name, phone)
        elif action == "find":
            name = input("请输入要查找的联系人姓名:")
            find_contact(name)
        elif action == "exit":
            break
        else:
            print("无效的操作,请重新输入")

if __name__ == "__main__":
    main()

在这个示例中,我们定义了一个名为contacts的字典来存储联系人的信息。我们还定义了两个函数:add_contact用于添加联系人,find_contact用于查找联系人。在add_contact函数中,我们使用正则表达式re.match(r'^\d{10}$', phone)来检查电话号码是否为10位数字。如果不是,我们会提示用户输入正确的电话号码格式。

polo 回答者

回答于 2024-07-12

内容由网友提供,仅供参考。