本人位于某地一名计算机学院在校生,此文章仅供学习参考,初写博客,还望海涵。

文章目录


  • 前言
  • 一、构思
  • 二、整体项目演示
  • 总结



前言

俗话说:“人生苦短,我学Python”,照目前互联网的趋势,Python编程语言是越来越火旺,经常刷到很多文章博主都说Python是很容易入门,但是我学了一段时间之后,发现事情并不简单....(也许是自己太笨拙哈哈哈憨笑),既然如此,那自己就更需要努力,既然没有法拉利的速度,就算是磨面也要一点一点磨到炉火纯青的境界(吹个牛皮不要喷我呐),咳咳,讲正事吧,我主要呢是运用列表和字典的来完成的这个小项目,其中更不或缺的有循环、if判断、def函数。


一、构思

  1. 写定义一个空列表和一个空字典来存储。
list1=[]  #用于储存字典中的信息
dict1={}  #用于储存联系人信息
  1. 定义功能选项
def Menu():
    print('请选择功能--------\n'
          '1.添加学员\n'
          '2.删除学员\n'
          '3.修改学员\n'
          '4.查询学员\n'
          '5.显示所有学员\n'
          '6.退出系统\n'
          '----------------')
  1. 重点来了,填补写每个功能的代码,中途出了一些小插曲。
#添加学员
def Add():
    id=input('请输入学号:')
    name=input('请输入姓名:')
    tel=input('请输入手机号:')
    dict1={'id':id,'name':name,'tel':tel}
    list1.append(dict1)  #将字典内容添加到列表中
    print(list1)
  • 可见添加学员的功能很轻松的就完成了,准备好,小插曲来了。
  • 下图是最初写的删除学员功能的代码
#删除学员
def Del():
    name=input('请输入要删除的学员的姓名:')
    if name in dict1:
        del list1['name']
        print(list1)
    else:
        print('并无此学员')
  • 运行结果如下:不管怎么写都是并无此学员
请选择功能--------
1.添加学员
2.删除学员
3.修改学员
4.查询学员
5.显示所有学员
6.退出系统
----------------
请输入功能序号:1
请输入学号:001
请输入姓名:zhang
请输入手机号:111
[{'id': '001', 'name': 'zhang', 'tel': '111'}]
请选择功能--------
1.添加学员
2.删除学员
3.修改学员
4.查询学员
5.显示所有学员
6.退出系统
----------------
请输入功能序号:2
请输入要删除的学员的姓名:zhang
并无此学员

当初的脑子不知是怎的,是卡壳了吗,现在回想,我现在都看不懂我当时是怎么写出这个代码的(哈哈哈哈哈哈哈自黑就是我了)

#删除学员
def Del():
    name=input('请输入要删除的学员的姓名:')
    i=0  #索引
    for item in list1:  #循环列表中的内容
        i+=1
        if name in item['name']:  #判断要删除学员的姓名与列表中嵌套的字典姓名相同时
            del list1[i-1]   #删除列表索引-1的内容
            print(list1)
        else:
            print('并无此学员...')

这样写很明显思路清晰明了……

  • 解出这一步,后面的功能就相当于继承了同样的思路吧,如下
#修改学员
def Update():
    name=input('请输入要修改的学员的姓名:')
    tel=input('请输入新的手机号:')
    i=0  #索引
    for item in list1:
        i+=1
        if name in item['name']:
            list1[i-1]['tel']=tel  #修改列表索引-1中嵌套的字典内容,旧tel修改为新的手机号
            print(list1)
        else:
            print('并无此学员...')

#查询学员
def Select():
    name=input('请输入要查询的学员的姓名:')
    for item in list1:
        if name in item['name']:
            print('查询到的学员信息如下--------')
            print('学员的学号是%s,姓名是%s,手机号是%s' % (item['id'],item['name'],item['tel']))
        else:
            print('查无此人...')


#显示所有学员
def ShowAll():
    print('学号 姓名 手机号')
    for item in list1:
        print(item['id'],item['name'],item['tel'])
#退出系统
def Quit():
    YesNo=input('确定要退出吗,yes or no?')
    if YesNo=='yes':
        quit()
  • 最后就是写一个死循环,调用所有的函数功能
while True:
    Menu()
    num=int(input('请输入功能序号:'))
    if num==1:
        Add()
    elif num==2:
        Del()
    elif num==3:
        Update()
    elif num==4:
        Select()
    elif num==5:
        ShowAll()
    elif num==6:
        Quit()
    else:
        print('无效选项-----')

二、整体项目演示

请选择功能--------
1.添加学员
2.删除学员
3.修改学员
4.查询学员
5.显示所有学员
6.退出系统
----------------
请输入功能序号:1
请输入学号:001
请输入姓名:张
请输入手机号:111
[{'id': '001', 'name': '张', 'tel': '111'}]
请选择功能--------
1.添加学员
2.删除学员
3.修改学员
4.查询学员
5.显示所有学员
6.退出系统
----------------
请输入功能序号:1
请输入学号:002
请输入姓名:李
请输入手机号:222
[{'id': '001', 'name': '张', 'tel': '111'}, {'id': '002', 'name': '李', 'tel': '222'}]
请选择功能--------
1.添加学员
2.删除学员
3.修改学员
4.查询学员
5.显示所有学员
6.退出系统
----------------
请输入功能序号:1
请输入学号:003
请输入姓名:王
请输入手机号:333
[{'id': '001', 'name': '张', 'tel': '111'}, {'id': '002', 'name': '李', 'tel': '222'}, {'id': '003', 'name': '王', 'tel': '333'}]
请选择功能--------
1.添加学员
2.删除学员
3.修改学员
4.查询学员
5.显示所有学员
6.退出系统
----------------
请输入功能序号:2
请输入要删除的学员的姓名:张
[{'id': '002', 'name': '李', 'tel': '222'}, {'id': '003', 'name': '王', 'tel': '333'}]
并无此学员...
请选择功能--------
1.添加学员
2.删除学员
3.修改学员
4.查询学员
5.显示所有学员
6.退出系统
----------------
请输入功能序号:3
请输入要修改的学员的姓名:王
请输入新的手机号:666
并无此学员...
[{'id': '002', 'name': '李', 'tel': '222'}, {'id': '003', 'name': '王', 'tel': '666'}]
请选择功能--------
1.添加学员
2.删除学员
3.修改学员
4.查询学员
5.显示所有学员
6.退出系统
----------------
请输入功能序号:4
请输入要查询的学员的姓名:王
查无此人...
查询到的学员信息如下--------
学员的学号是003,姓名是王,手机号是666
请选择功能--------
1.添加学员
2.删除学员
3.修改学员
4.查询学员
5.显示所有学员
6.退出系统
----------------
请输入功能序号:5
学号 姓名 手机号
002 李 222
003 王 666
请选择功能--------
1.添加学员
2.删除学员
3.修改学员
4.查询学员
5.显示所有学员
6.退出系统
----------------
请输入功能序号:6
确定要退出吗,yes or no?yes

Process finished with exit code 0

总结

以上就是我的构思和所有的代码了,在获取列表中嵌套的字典内容时遇到了困难,说明我还是对于基础的数据类型把握的不够深厚,希望这篇文章能够帮助到大家,一起努力吧,冲冲冲!!!