使用Python编写个人通讯录程序。要求能够查询通讯录清单,对通讯录中的记录实现增加、删除、修改、查询操作,通讯录中至少要有三个字段:姓名、手机号码、通讯地址。使用CSV文件保存通讯录内容。采用文本界面操作,
时间: 2023-12-10 16:42:35 浏览: 73
好的,以下是一个简单的示例代码。
```python
import csv
def load_contacts():
with open('contacts.csv', 'r', newline='') as f:
reader = csv.reader(f)
contacts = list(reader)
return contacts
def save_contacts(contacts):
with open('contacts.csv', 'w', newline='') as f:
writer = csv.writer(f)
writer.writerows(contacts)
def add_contact(contacts):
name = input("请输入姓名:")
phone = input("请输入手机号码:")
address = input("请输入通讯地址:")
contacts.append([name, phone, address])
save_contacts(contacts)
print("联系人已添加!")
def delete_contact(contacts):
name = input("请输入要删除的联系人姓名:")
found = False
for contact in contacts:
if contact[0] == name:
contacts.remove(contact)
found = True
break
if found:
save_contacts(contacts)
print("联系人已删除!")
else:
print("未找到该联系人!")
def modify_contact(contacts):
name = input("请输入要修改的联系人姓名:")
found = False
for contact in contacts:
if contact[0] == name:
phone = input("请输入新的手机号码:")
address = input("请输入新的通讯地址:")
contact[1] = phone
contact[2] = address
found = True
break
if found:
save_contacts(contacts)
print("联系人已修改!")
else:
print("未找到该联系人!")
def search_contact(contacts):
name = input("请输入要查询的联系人姓名:")
found = False
for contact in contacts:
if contact[0] == name:
print("姓名:", contact[0])
print("手机号码:", contact[1])
print("通讯地址:", contact[2])
found = True
break
if not found:
print("未找到该联系人!")
def list_contacts(contacts):
print("姓名\t手机号码\t通讯地址")
for contact in contacts:
print(contact[0], "\t", contact[1], "\t", contact[2])
def main():
contacts = load_contacts()
while True:
print("请选择操作:")
print("1. 添加联系人")
print("2. 删除联系人")
print("3. 修改联系人")
print("4. 查询联系人")
print("5. 查看通讯录")
print("6. 退出程序")
choice = input()
if choice == '1':
add_contact(contacts)
elif choice == '2':
delete_contact(contacts)
elif choice == '3':
modify_contact(contacts)
elif choice == '4':
search_contact(contacts)
elif choice == '5':
list_contacts(contacts)
elif choice == '6':
break
else:
print("无效的选择,请重新输入!")
if __name__ == '__main__':
main()
```
在运行程序之前,需要在同一目录下创建名为`contacts.csv`的CSV文件,并将文件头设置为`姓名,手机号码,通讯地址`。
程序会打印一个简单的文本菜单,您可以通过输入数字来选择要执行的操作。您可以通过添加、删除、修改、查询和列出联系人来管理通讯录。每个操作都会从CSV文件中读取联系人列表,执行所需的操作,然后将结果保存回文件中。
请注意,此示例代码仅用于演示目的,并不包括异常处理和其他高级功能。如果您要使用此代码来开发实际应用程序,建议您添加适当的错误处理和其他功能以提高程序的健壮性。
阅读全文