使用Python编写个人通讯录程序,使用CSV文件保存通讯录内容。采用文本界面操作,例如运行程序后显示: ==================通讯录=================== 1.显示清单 2.增加记录 3.删除记录 4.修改记录 5.查询记录 6.退出程序 请输入你的选择: 用户输入1,则在屏幕上显示通讯录中的所有记录: 编号 姓名 手机号码 通讯地址 1 张三 13912345678 南京信息工程大学 2 李四 19182398187 南京工业大学 3 王五 12112312312 南京大学
时间: 2023-09-04 09:09:20 浏览: 263
python做的通讯录
5星 · 资源好评率100%
好的,这是一个很不错的问题。以下是一个简单的Python代码示例,实现了一个基本的通讯录程序,使用CSV文件保存通讯录内容,采用文本界面操作:
```python
import csv
# 定义CSV文件路径
csv_file_path = 'contacts.csv'
# 读取CSV文件中的数据
def read_csv():
with open(csv_file_path, 'r', newline='') as file:
reader = csv.reader(file)
contacts = list(reader)
return contacts
# 将数据写入CSV文件
def write_csv(contacts):
with open(csv_file_path, 'w', newline='') as file:
writer = csv.writer(file)
writer.writerows(contacts)
# 显示所有记录
def show_all():
contacts = read_csv()
print('编号\t姓名\t手机号码\t通讯地址')
for i, contact in enumerate(contacts):
print(f'{i+1}\t{contact[0]}\t{contact[1]}\t{contact[2]}')
# 增加记录
def add_record():
name = input('请输入姓名:')
phone = input('请输入手机号码:')
address = input('请输入通讯地址:')
contact = [name, phone, address]
contacts = read_csv()
contacts.append(contact)
write_csv(contacts)
print('记录已添加!')
# 删除记录
def delete_record():
index = int(input('请输入要删除的记录编号:'))
contacts = read_csv()
if index > 0 and index <= len(contacts):
del contacts[index-1]
write_csv(contacts)
print('记录已删除!')
else:
print('记录编号无效!')
# 修改记录
def edit_record():
index = int(input('请输入要修改的记录编号:'))
contacts = read_csv()
if index > 0 and index <= len(contacts):
name = input('请输入姓名:')
phone = input('请输入手机号码:')
address = input('请输入通讯地址:')
contacts[index-1] = [name, phone, address]
write_csv(contacts)
print('记录已修改!')
else:
print('记录编号无效!')
# 查询记录
def search_record():
keyword = input('请输入要查询的关键字:')
contacts = read_csv()
results = []
for contact in contacts:
if keyword in contact[0] or keyword in contact[1] or keyword in contact[2]:
results.append(contact)
if len(results) > 0:
print('编号\t姓名\t手机号码\t通讯地址')
for i, contact in enumerate(results):
print(f'{i+1}\t{contact[0]}\t{contact[1]}\t{contact[2]}')
else:
print('没有找到匹配的记录!')
# 主程序
while True:
print('==================通讯录===================')
print('1.显示清单\t2.增加记录\t3.删除记录')
print('4.修改记录\t5.查询记录\t6.退出程序')
choice = input('请输入你的选择:')
if choice == '1':
show_all()
elif choice == '2':
add_record()
elif choice == '3':
delete_record()
elif choice == '4':
edit_record()
elif choice == '5':
search_record()
elif choice == '6':
break
else:
print('选择无效,请重新输入!')
```
这个程序实现了以下功能:
1. 读取CSV文件中的数据;
2. 将数据写入CSV文件;
3. 显示所有记录;
4. 增加记录;
5. 删除记录;
6. 修改记录;
7. 查询记录;
8. 退出程序。
你可以根据自己的需求对程序进行修改和扩展。
阅读全文