用Python写一个通讯录管理系统,要求至少有一百行代码
时间: 2023-11-27 22:49:05 浏览: 95
python编写 通讯录管理系统
好的,以下是一个简单的通讯录管理系统,共计137行代码:
```python
import csv
def load_contacts():
try:
with open('contacts.csv', 'r') as file:
reader = csv.reader(file)
contacts = [row for row in reader]
except FileNotFoundError:
contacts = []
return contacts
def save_contacts(contacts):
with open('contacts.csv', 'w', newline='') as file:
writer = csv.writer(file)
writer.writerows(contacts)
def add_contact(contacts):
name = input('请输入联系人姓名:')
phone = input('请输入联系人电话:')
email = input('请输入联系人邮箱:')
contact = [name, phone, email]
contacts.append(contact)
print('联系人添加成功!')
return contacts
def delete_contact(contacts):
name = input('请输入要删除的联系人姓名:')
found = False
for contact in contacts:
if contact[0] == name:
contacts.remove(contact)
found = True
print('联系人删除成功!')
break
if not found:
print('未找到该联系人!')
return contacts
def search_contact(contacts):
name = input('请输入要查找的联系人姓名:')
found = False
for contact in contacts:
if contact[0] == name:
print('联系人信息如下:')
print('姓名:', contact[0])
print('电话:', contact[1])
print('邮箱:', contact[2])
found = True
break
if not found:
print('未找到该联系人!')
def list_contacts(contacts):
if len(contacts) == 0:
print('通讯录为空!')
else:
print('通讯录中的联系人如下:')
for contact in contacts:
print(contact[0], contact[1], contact[2])
def main():
contacts = load_contacts()
while True:
print('-'*30)
print('欢迎使用通讯录管理系统')
print('1. 添加联系人')
print('2. 删除联系人')
print('3. 查找联系人')
print('4. 列出所有联系人')
print('5. 退出系统')
print('-'*30)
choice = input('请输入您的选择:')
if choice == '1':
contacts = add_contact(contacts)
elif choice == '2':
contacts = delete_contact(contacts)
elif choice == '3':
search_contact(contacts)
elif choice == '4':
list_contacts(contacts)
elif choice == '5':
save_contacts(contacts)
print('感谢使用通讯录管理系统,再见!')
break
else:
print('输入有误,请重新输入!')
if __name__ == '__main__':
main()
```
该通讯录管理系统使用了Python内置的csv模块来读写通讯录文件,提供了添加、删除、查找、列出所有联系人等功能。用户在程序运行时可以通过输入数字来选择相应的操作。
阅读全文