需求:
开个一个通讯录的管理系统,主要用于实现存储班级中同学的信息(姓名、年龄、电话)
涉及点:列表、字典、死循环
相关链接:Python--列表及其应用场景---增、删、改、查。-CSDN博客
Python---死循环概念---while True-CSDN博客
注意:在Python中,我们可以使用字典来保存一个人的基本信息。但是如果想保存多个人的信息,我们必须把列表和字典结合起来。
代码:
students = [0,1,2]
student = {'name':'刘备', 'age':18, 'mobile': '10086'}
组装:
students = [{'name':'刘备', 'age':18, 'mobile': '10086'}, {'name':'关羽', 'age':17, 'mobile': '10000'}, {'name':'张飞', 'age':16, 'mobile': '10010'}]
为什么需要死循环:
当我们选中某个菜单时,功能一旦执行完毕,则整个程序就执行结束了。为了保存程序可以一直运行下去,可以模拟死循环的效果,让程序一直运行下去。
while True:
...
死循环相关链接:Python---死循环概念---while True-CSDN博客
要求:
正常情况下,通讯录管理系统应该有4个功能:增删改查
代码:
# 1、定义一个列表,将来用于存储所有学员的通讯信息
students = []
# 2、打印功能菜单
print('-' * 40)
print('欢迎使用通讯录管理系统')
print('[1] 增加学员信息')
print('[2] 删除学员信息')
print('[3] 退出系统')
print('-' * 40)
while True:
# 3、提示用户进行相关操作
user_num = int(input('请输入您要进行的操作编号:'))
if user_num == 1:
# 4、提示用户输入学员的信息
student = {}
student['name'] = input('请输入学员的姓名:')
student['age'] = int(input('请输入学员的年龄:'))
student['mobile'] = input('请输入学员的电话:')
# 5、把学员信息保存在列表中
students.append(student)
print(students)
elif user_num == 2:
name = input('请输入要删除的学员信息:')
# 6、遍历所有学员信息
for i in students:
if i['name'] == name:
# 从列表中删除整个学员(字典)
students.remove(i)
print('删除成功')
print(students)
else:
print('您要删除的学员信息不存在')
elif user_num == 3:
print('感谢您使用通讯录管理系统')
break
else:
print('输入错误,请重新输入要操作的编号')
图示: