
今天,我又来了,我今天敲一下关于这个学生管理系统的代码。
具体分为以下几个部分:
1、新建一个列表,用来存放所有的学生信息
2、定义一个打印一个功能菜单目录(告诉和简化指令)
3、定义一个添加信息的函数
4、定义一个删除信息的函数
5、定义一个修改信息的函数
6、定义一个打印学生信息的函数
7、定义一个总函数用来调用上面定义的函数
废话不多说,我们开始第一个板块
一、新建一个列表
stuInfos = []
二、打印目录函数
def printMenu():
print("=" * 30)
print(" 学生管理系统 V1.0 ")
print("1. 添加学生信息 ")
print("2. 删除学生信息 ")
print("3. 修改学生信息 ")
print("4. 显示所有学生信息 ")
print("0. 退出系统 ")
print("=" * 30)
到这基本上都是很简单的
三、添加函数
def addStuInfo():
newName = input(" 请输入新学生的名字: ")
# 提示并获取学生的性别
newSex = input(" 请输入新学生的性别: ( 男 / 女 )")
# 提示并获取学生的手机号码
newPhone = input(" 请输入新学生的手机号码: ")
newInfo = {}
newInfo['name'] = newName
newInfo['sex'] = newSex
newInfo['phone'] = newPhone
stuInfos.append(newInfo)
这里是把输入的信息放到newInfo{}字典里面,然后通过append函数,将信息加入到了总信息库stuInfos列表里面,形成列表字典嵌套
我在这做了个小例子,代码如下:(这个不是管理系统里面的代码!是我举的关于列表字典嵌套的例子)
StudentInfos = []
A = {'name' :'xxx','sex':'nan'}
StudentInfos.append(A)
print(StudentInfos)
B = {'name':'yyy','sex':'nv'}
StudentInfos.append(B)
print(StudentInfos)

看,结果就和上面一样,这就是所谓的列表字典嵌套。好处就是一个字典是一个学生的所有信息!
四、删除函数
def delStuInfo(student):
delNum = int(input(" 请输入要删除的序号: "))-1
del student[delNum]
这里也挺好理解的当你想修改第一个字典时,序号应当是0,而不是1。
五、修改函数
def modifyStuInfo():
stuId=int(input(" 请输入要修改的学生的序号: "))
newName = input(" 请输入新学生的名字: ")
newSex = input(" 请输入新学生的性别: ( 男 / 女 )")
newPhone = input(" 请输入新学生的手机号码: ")
stuInfos[stuId - 1]['name'] = newName
stuInfos[stuId - 1]['sex'] = newSex
stuInfos[stuId - 1]['phone'] = newPhone
这里是利用重新赋值达到一个对于信息的修改
举例说明:
StudentInfos = []
A = {'name' :'xxx','sex':'nan'}
StudentInfos.append(A)
B = {'name':'yyy','sex':'nv'}
StudentInfos.append(B)
print(StudentInfos)
newname = 'zzz'
StudentInfos[0]['name']=newname
print(StudentInfos)

前后对比
六、展示函数
def showStuInfo():
print("=" * 30)
print(" 学生的信息如下 :")
print("=" * 30)
print(" 序号 姓名 性别 手机号码 ")
i = 1
for tempInfo in stuInfos:
print("%d %s %s %s" % (i, tempInfo['name'],
tempInfo['sex'], tempInfo['phone']))
i += 1
上面的print没的说,主要是下面的用到了一个for循环和%的格式化输出
七、调用函数
def main():
while True:
printMenu() # 打印菜单
key=input(" 请输入功能对应的数字 :") # 获得用户输入的序号
if key=='1': # 添加学生的信息
addStuInfo()
elif key =='2': # 删除学生的信息
delStuInfo(stuInfos)
elif key=='3': # 修改学生的信息
modifyStuInfo()
elif key=='4': # 查看所有学生的信息
showStuInfo()
elif key=='0': # 退出系统
quitConfirm = input(" 亲,真的要退出么? (Yes or No):")
if quitConfirm == "Yes":
break
else:
print(" 输入有误,请重新输入 ")
这里有对应的key数字对应不同的if通道调所定义的函数,进行分支处理,我们的while循环是为了保证在输入了一次key调用了函数之后,继续回到打印菜单然后继续可以输入key操作,当输入'0'时输入'yes',则break循环,结束。
当然!最重要的是我们要调用main()函数,利用main()函数已经设计好了的来调用其他函数!
main()
好的最后一步我们也完成啦!

点个赞再走吧!