用 Python 完成通讯录管理系统编程,输出代码,具有以下功能: (1)增加联系人。(2)删除联系人。(3)可按联系人姓名、单位、电话,查找对应的联系人,如果查询结果有多个,输出所有结果。(4)提供联系人信息的保存(5)提供联系人信息的读取功能。
时间: 2024-02-11 18:08:07 浏览: 135
Python实现通讯录功能
好的,以下是一个简单的通讯录管理系统的 Python 代码,实现了你所要求的所有功能:
```python
import json
def add_contact(contact_list):
name = input("请输入联系人姓名:")
company = input("请输入联系人单位:")
phone = input("请输入联系人电话:")
contact = {"name": name, "company": company, "phone": phone}
contact_list.append(contact)
print("联系人添加成功!")
def delete_contact(contact_list):
name = input("请输入要删除联系人的姓名:")
deleted = False
for contact in contact_list:
if contact["name"] == name:
contact_list.remove(contact)
deleted = True
print("联系人删除成功!")
if not deleted:
print("没有找到该联系人。")
def search_contact(contact_list):
keyword = input("请输入查找关键字:")
results = []
for contact in contact_list:
if keyword in contact["name"] or keyword in contact["company"] or keyword in contact["phone"]:
results.append(contact)
if len(results) == 0:
print("没有找到匹配的联系人。")
else:
for contact in results:
print("姓名:", contact["name"])
print("单位:", contact["company"])
print("电话:", contact["phone"])
print()
def save_contacts(contact_list):
with open("contacts.json", "w") as f:
json.dump(contact_list, f)
print("联系人信息已保存到文件。")
def load_contacts():
try:
with open("contacts.json", "r") as f:
contact_list = json.load(f)
except FileNotFoundError:
contact_list = []
return contact_list
def main():
contact_list = load_contacts()
while True:
print("请选择操作:")
print("1. 增加联系人")
print("2. 删除联系人")
print("3. 查找联系人")
print("4. 保存联系人信息到文件")
print("5. 从文件读取联系人信息")
print("6. 退出程序")
choice = input()
if choice == "1":
add_contact(contact_list)
elif choice == "2":
delete_contact(contact_list)
elif choice == "3":
search_contact(contact_list)
elif choice == "4":
save_contacts(contact_list)
elif choice == "5":
contact_list = load_contacts()
print("联系人信息已从文件读取。")
elif choice == "6":
break
else:
print("无效的输入。")
if __name__ == "__main__":
main()
```
你可以直接运行这个代码,然后按照提示进行操作即可。注意,联系人信息会被保存到当前目录下的 `contacts.json` 文件中。
阅读全文