m0_59952600
2021-07-05 10:28
采纳率: 100%
浏览 35
已采纳

就是py学生管理系统中的students怎么定义

就是学生管理系统中的students怎么定义
s = "姓名:%s,年龄:%d,分数:%2f"
name = input("请输入名字:")
age = int(input("请输入年龄:"))
score = int(input("请输入分数;"))
print(s % (name,age,score))

将学生信息进行打印

title1 = '+' + '-' * 15 + '+' + '-' * 5 + '+' + '-' * 7 + '+'
title2 = '|%s|%s|%s|' % ('name'.center(15),'age'.center(5),'score'.center(7))
print(title1)
print(title2)
print(title1)
for stu in students:
print('|%s|%s|%s|' % (
stu['name'].center(15),

从字典里面去除姓名和分数,转为字符串并居中,然后格式化填入

    str(stu['age']).center(5),
    str(stu['score']).center(7)
))

print(title1)

修改学生数据

def modify_students(students):
name = input("请输入要修改的学生名字:")
# students [{"name":"zs","age":19,...},()]
for stu in students:
if name == stu['name']:
score = int(input("请输入你要修改的成绩:"))
stu['score'] = score
print("修改%s的成绩成功" % name)
return
print("没有找到名字为%s的学生,修改失败" % name)

修改学生数据

def delete_students(students):
name = input("请输入要删除的学生名字:")
for stu in students:
if name == stu['name']:
students.remove(stu)
print("删除名为%s的学生成功" % name)
return
print("没有名为%s的学生,删除失败")

部分主函数参考代码

def main():
stu_infos = []
while True:
show_menu()
op = input("请选择:")
if op == '1':
students = input_student()
stu_infos.extend(students)
elif op == '2':
output_student(stu_infos)
elif op == '3':
modify_students(stu_infos)
elif op =='4':
delete_students(stu_infos)
elif op =='0':
print("退出程序")
return
else:
print("输入不正确")
p = input("请输入y回主菜单,输入其他退出程序")
if p !='y':
print("退出程序")
print("输入不正确")
p = input("输入y回主菜单,输入其它退出程序")
if p !='y':
print("退出程序")
return

if name == "nain":
main()

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • CSDN专家-HGJ 2021-07-05 14:26
    已采纳

    将students定义为一个元素为字典的列表即可,代码修改如下:

    def input_students():
        students = []
        s = "姓名:%s,年龄:%d,分数:%2f"
        name = input("请输入名字:")
        age = int(input("请输入年龄:"))
        score = int(input("请输入分数:"))
        print(s % (name,age,score))
        students.append({'name':name,'age':age,'score':score})
        return students
    def output_students(students):
        title1 = '+' + '-' * 15 + '+' + '-' * 5 + '+' + '-' * 7 + '+'
        title2 = '|%s|%s|%s|' % ('name'.center(15),'age'.center(5),'score'.center(7))
        print(title1)
        print(title2)
        print(title1)
        for stu in students:
            print('|%s|%s|%s|' % (
            stu['name'].center(15),str(stu['age']).center(5),str(stu['score']).center(7)))
        print(title1)
    #修改学生数据
    def modify_students(students):
        name = input("请输入要修改的学生名字:")
        # students [{"name":"zs","age":19,...},()]
        for stu in students:
            if name == stu['name']:
                score = int(input("请输入你要修改的成绩:"))
                stu['score'] = score
                print("修改%s的成绩成功" % name)
            return
        print("没有找到名字为%s的学生,修改失败" % name)
    
    #修改学生数据
    def delete_students(students):
        name = input("请输入要删除的学生名字:")
        for stu in students:
            if name == stu['name']:
                students.remove(stu)
                print("删除名为%s的学生成功" % name)            
                return students
            print("没有名为%s的学生,删除失败")
    def show_menu():
        print('######学生成绩管理系统######\n')
        print('1.输入学生信息\n2.输出学生信息\n3.修改学生信息\n4.删除学生信息\n5.退出系统')
        print('############################\n')
    #部分主函数参考代码
    def main():
        stu_infos = []
        while True:
            show_menu()
            op = input("请选择:")
            if op == '1':
                students = input_students()
                stu_infos.extend(students)
            elif op == '2':
                output_students(stu_infos)
            elif op == '3':
                modify_students(stu_infos)
            elif op =='4':
                delete_students(stu_infos)
            elif op =='5':
                print("退出程序")
                break        
            else:
                print("输入不正确")
                p = input("请输入y回主菜单,输入其他退出程序")
                if p !='y':
                    print("退出程序")
                    print("输入不正确")
                    p = input("输入y回主菜单,输入其它退出程序")
                if p !='y':
                    print("退出程序")
    
    if __name__ == "__main__":
        main()
    
    
    已采纳该答案
    评论
    解决 1 无用
    打赏 举报
  • yycgis 2021-07-05 10:36

    就你的代码来看,就包括3个字段,name,age,score

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题