? ? ? ? ?本人位于某地一名计算机学院在校生,此文章仅供学习参考,初写博客,还望海涵。
文章目录
前言
俗话说:“人生苦短,我学Python”,照目前互联网的趋势,Python编程语言是越来越火旺,经常刷到很多文章博主都说Python是很容易入门,但是我学了一段时间之后,发现事情并不简单....(也许是自己太笨拙哈哈哈憨笑),既然如此,那自己就更需要努力,既然没有法拉利的速度,就算是磨面也要一点一点磨到炉火纯青的境界(吹个牛皮不要喷我呐),咳咳,讲正事吧,我主要呢是运用列表和字典的来完成的这个小项目,其中更不或缺的有循环、if判断、def函数。
一、构思
- 写定义一个空列表和一个空字典来存储。
list1=[] #用于储存字典中的信息
dict1={} #用于储存联系人信息 - 定义功能选项
def Menu():
print('请选择功能--------\n'
'1.添加学员\n'
'2.删除学员\n'
'3.修改学员\n'
'4.查询学员\n'
'5.显示所有学员\n'
'6.退出系统\n'
'----------------') - 重点来了,填补写每个功能的代码,中途出了一些小插曲。
#添加学员
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
总结
以上就是我的构思和所有的代码了,在获取列表中嵌套的字典内容时遇到了困难,说明我还是对于基础的数据类型把握的不够深厚,希望这篇文章能够帮助到大家,一起努力吧,冲冲冲!!!
|