Python---综合案例:通讯录管理系统---涉及点:列表、字典、死循环

需求:

开个一个通讯录的管理系统,主要用于实现存储班级中同学的信息(姓名、年龄、电话)

涉及点:列表、字典、死循环

相关链接:Python--列表及其应用场景---增、删、改、查。-CSDN博客

Python---字典---dict-CSDN博客

Python---死循环概念---while True-CSDN博客

注意:在Python中,我们可以使用字典来保存一个人的基本信息。但是如果想保存多个人的信息,我们必须把    列表和字典   结合起来。

代码:


students = [0,1,2]   #  3个人,3个下标,记录3个人信息。
student = {'name':'刘备', 'age':18, 'mobile': '10086'}  # 1个人详细信息。

组装:-------把其他人的详细信息,全部用字典,放进列表里。----实现列表和字典 组合

students = [{'name':'刘备', 'age':18, 'mobile': '10086'}, {'name':'关羽', 'age':17, 'mobile': '10000'}, {'name':'张飞', 'age':16, 'mobile': '10010'}]

为什么需要死循环:

当我们选中某个菜单时,功能一旦执行完毕,则整个程序就执行结束了。为了保存程序可以一直运行下去,可以模拟死循环的效果,让程序一直运行下去。

while True:
    ...

死循环相关链接:Python---死循环概念---while True-CSDN博客

要求:

正常情况下,通讯录管理系统应该有4个功能:增删改查

思考:

可以一步步慢慢写,先写整体每部分框架,再写每部分框架中详细设计步骤,每写完一部分,就进行打印一部分,看结果是否正确。

----------将自己代入系统,作为一个设计者,会怎么设计?一步步来。

初始系统,里面肯定是没有数据的,那么就用   空列表   表示---[   ]

接着思考,记录人员信息,最好的办法,就是用字典-----相关链接Python---字典---dict-CSDN博客

因为要求功能增删改查,所以,对应   列表的  增删改查  功能

相关链接:Python--列表及其应用场景---增、删、改、查。-CSDN博客

代码:


# 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中(原本是空列表)----列表中,是多个字典,以键值对形式,输出的。
        students.append(student)
        print(students)

    elif user_num == 2:
        name = input('请输入要删除的学员信息:')
        # 6、遍历所有学员信息
        for i in students:
            if i['name'] == name:   # 如果输入的名字,和已有的名字一样,执行删除remove。
                # 从列表中删除整个学员(字典)
                students.remove(i)
                print('删除成功')
                print(students)
            else:   # 如果输入的名字,和已有的名字,没有一样的,执行提示。
                print('您要删除的学员信息不存在')

    elif user_num == 3:    # 退出功能----break 终止,结束。
        print('感谢您使用通讯录管理系统')   
        break    #  break 终止,结束  

    else:
        print('输入错误,请重新输入要操作的编号')

相关链接:Python--循环中的两大关键词 break 与 continue-CSDN博客

图示:


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

唯元素

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值