基于python的通讯录管理系统。功能要求:1.提供增加,删除,修改通讯录的功能。2.提供单个查询,查询所有通讯录的功能。3.能够保存通讯录信息到本地文件,退出等功能。4.实现按照姓名首字母排序,或者按照学号排序。
时间: 2024-02-27 14:54:26 浏览: 102
好的,这是一个通讯录管理系统的基本功能需求,我可以帮你解决这个问题。你需要使用Python编写代码,首先需要确定你使用的数据结构,如字典或列表。下面是一个通讯录管理系统的示例代码:
```python
# 定义通讯录数据结构(字典)
address_book = {}
# 增加联系人
def add_contact(name, phone_number):
address_book[name] = phone_number
print(f"联系人{name}已添加")
# 删除联系人
def delete_contact(name):
if name in address_book:
del address_book[name]
print(f"联系人{name}已删除")
else:
print(f"通讯录中没有{name}")
# 修改联系人
def update_contact(name, phone_number):
if name in address_book:
address_book[name] = phone_number
print(f"联系人{name}已更新")
else:
print(f"通讯录中没有{name}")
# 单个查询联系人
def search_contact(name):
if name in address_book:
print(f"{name}的号码是{address_book[name]}")
else:
print(f"通讯录中没有{name}")
# 查询所有联系人
def show_all_contacts():
if len(address_book) > 0:
print("通讯录:")
for name, phone_number in sorted(address_book.items()):
print(f"{name}: {phone_number}")
else:
print("通讯录为空")
# 按照姓名首字母排序
def sort_by_name():
if len(address_book) > 0:
print("按照姓名首字母排序:")
for name, phone_number in sorted(address_book.items()):
print(f"{name}: {phone_number}")
else:
print("通讯录为空")
# 按照学号排序
def sort_by_phone_number():
if len(address_book) > 0:
print("按照学号排序:")
for name, phone_number in sorted(address_book.items(), key=lambda x: x[1]):
print(f"{name}: {phone_number}")
else:
print("通讯录为空")
# 保存通讯录信息到本地文件
def save_to_file(filename):
with open(filename, 'w') as f:
for name, phone_number in address_book.items():
f.write(f"{name},{phone_number}\n")
print(f"通讯录已保存到{filename}")
# 从本地文件中加载通讯录信息
def load_from_file(filename):
with open(filename, 'r') as f:
for line in f:
name, phone_number = line.strip().split(',')
address_book[name] = phone_number
print(f"从{filename}加载通讯录信息")
```
你可以根据需要修改这个示例代码以满足你的具体需求。
阅读全文