目录
1.打印输出学生通讯录管理系统的菜单
2.接收用户从键盘输入的选择序号
3.根据输入的选择序号,判断并执行不同的功能
注意:本例中,要想保存所以学生的通讯信息,需要用到字典。
1.打印输出学生通讯录管理系统的菜单
首先我们先定义一个showMenu()函数,实现打印输出菜单的功能
文章图片
在实际应用中,学生通讯系统运行时,需要不间断地显示菜单信息。
这时需要将showMenu()函数放到一个循环里:
while True:2.接收用户从键盘输入的选择序号
# 打印输出菜单
showMenu()
这时需要定义的是一种无参数、有返回值的getSelect()函数。
def getSelect():将用户选择的序号传入:
selectNum=int(input("请输入选择的序号:"))
return selectNum
num=getSelect()3.根据输入的选择序号,判断并执行不同的功能
if num == 1:注意:本例中,要想保存所以学生的通讯信息,需要用到字典。
addstuInof()
elif num == 2:
delstuInof()
elif num == 3:
modifystuInfo()
elif num == 4:
seckstuIofo()
elif num == 5:
showstuInfo()
elif num == 6:
saveToFile()
elif num == 7:
exitSystem()
break
else:
print("你的输入有误,请重新输入··· ···")
所以我们要先定义一个字典,并且不为空,包含两条记录,如下:
dict={
"二狗":{"性别":"男","电话":"13787007426"},
"旺财":{"性别":"女","电话":"13497008416"}
}
下面是完整代码:
# 学生通讯录管理系统主界面
def showMenu():
print("=" * 30)
print("=======学生通讯录管理系统========")
print("1.添加学生")
print("2.删除学生")
print("3.修改学生")
print("4.查询学生")
print("5.所有学生")
print("6.保存学生")
print("7.退出学生")
print("=" * 30)# 选择输入的功能
def getSelcet():
selectNum = int(input("请输入选择的序号:"))
return selectNum# 从文件读取数据
def recoverData():
global dict
f = open("backup.data",'r',encoding='UTF-8')
content = f.read()
dict = eval(content)
f.close()# 实现序号1:添加学生信息
def addstuInof():
name = input("你当前是做添加操作,请输入要添加的名片信息:姓名")
sex = input("请输入要添加的名片信息:性别")
telphone = input("请输入要添加的名片信息:手机号码")
dict[name] = {"性别": sex, "电话": telphone}
print(dict)# 实现序号2:删除学生信息def delstuInof():
name = input("你当前删除操作,接下来请输入要删除的姓名:")
del dict[name]
print(dict)# 实现序号3:修改学生信息
def modifystuInfo():
name = input("你当前是修改操作,接下来请输入要修改人的姓名:")
sex = input("请输入要修改后的信息,性别:")
telphone = input("请输入要修改后的信息,手机号码:")
dict[name] = {"性别": sex, "电话": telphone}
print(dict)# 实现序号4:查询学生信息
def seckstuIofo():
name = input("你当前是做查询操作,接下来亲输入要查询的人的姓名:")
print(dict[name])# 实现序号5:显示所以显示的通讯信息
def showstuInfo():
print("当前的名片有:")
for i in dict.items():
print(i)# 实现序号6 保存学生信息
def saveToFile():
f = open("backup.data", "w", encoding="UTF-8")
f.write(str(dict))
f.close()# 实现序号7 退出显示管理系统
def exitSystem():
print("谢谢你的使用!")# main主函数
def main():
recoverData()
while True:
showMenu()
num = getSelcet()
if num == 1:
addstuInof()
elif num == 2:
delstuInof()
elif num == 3:
modifystuInfo()
elif num == 4:
seckstuIofo()
elif num == 5:
showstuInfo()
elif num == 6:
saveToFile()
elif num == 7:
exitSystem()
break
else:
print("你的输入有误,请重新输入··· ···")main()
【Python编程语言|Python学生通讯录管理系统案例(文件版)】
推荐阅读
- 机器学习|用Matplotlib绘制学生身高实例——直方图
- 机器学习|用Matplotlib绘制事物的变化情况实例——折线图
- 可视化|Python直方图绘图(NumPy,Matplotlib,Pandas和Seaborn)
- python|吴恩达机器学习笔记——踩了最多坑的Pycharm 导入numpy,pandas和matplotlib
- 机器学习|机器学习——Numpy、 Matplotlib、 Pandas的使用
- JavaWeb|Servlet----ServletContext
- JavaWeb|HttpServlet源码分析
- Qt-大屏电子看板|Qt编写可视化大屏电子看板系统26-模块4模具进度
- java基础|String、StirngBuffer、StringBuilder的区别《区别|CSDN创作打卡》