zoukankan      html  css  js  c++  java
  • 学生管理系统(2)

    def demo1():
        '''演示字典的方法'''
        d1 = {} #空字典
        # 1. 增加
        d1['name1']= 'aa'
        d1['name2']='bb'
        # 2.修改
        d1['name2']='cc'
        d1.update({'name2':'ddd'})
        d1.update({'name3': 'ee'}) #update:更新操作,有就修改,无:新增
        # 3.删除
        del d1['name1']
        print(d1)
    
    def show_menu():
        '''显示菜单'''
        print('*******欢迎使用学生管理系统*************')
        print('*******	 1.增加学生信息************')
        print('*******	 2.删除学生信息************')
        print('*******	 3.修改学生信息************')
        print('*******	 4.展示所有学生信息************')
        print('*******	 5.根据名字查询************')
        print('*******	 6.统计平均年龄************')
        print('*******	 7.退出系统************')
    
    def add_stu():
        '''返回的是所有学生列表!'''
        print('		*************增加学生信息************')
        # 循环增加
        flag = 'y'  #循环标记
        studetns =[] # 多个学生
        while flag=='y':
            id = input('请输入编号:')
            name = input('请输入名字:')
            sex = input('请输入性别:')
            age = input('请输入年龄:')
            # 创建一个学生字典!
            stu = {'id':id,'name':name,'sex':sex,'age':age}
            studetns.append(stu) #放到列表!
            flag = input('是否继续(y/n):')
        print('学生添加完成!!!')
    
    
        return studetns
    
    
    
    def del_stu(students):
        print('	**************删除学生信息*************')
        print(students)
        name = input('请输入删除的名字:')
        # 根据名字找位置
        delnum=0
        for i,stu in enumerate(students):
            if stu['name']==name:
                delnum = i  #要删除的位置
                break
        students.pop(delnum) #根据位置删除
        print('删除后的数据:')
        print(students)
    
    def update_stu(students):
        print('**********修改*************')
        name = input('请输入删除的名字:')
        # 根据名字找位置
        delnum=0
        for i,stu in enumerate(students):
            if stu['name']==name:
                delnum = i  #要删除的位置
                break
        students.pop(delnum) #根据位置删除
    
        id = input('请输入新编号:')
        name = input('请输入新名字:')
        sex = input('请输入新性别:')
        age = input('请输入新年龄:')
        # 创建一个学生字典!
        stu = {'id': id, 'name': name, 'sex': sex, 'age': age}
        return students.append(stu)
    
    def show_list(students):
        print('展示所有学生信息!')
        # 循环打印所有学生
        # [{},{},....]    for i in students :  i是每个值!
        for stu in students:
            print(stu)
        for i,v in enumerate(students):
            print(f'第{i+1}个,值:{v}')
    
    
    def search_name(students):
        print('根据名字查询')
        print('	**************删除学生信息*************')
        print(students)
        name = input('请输入删除的名字:')
        # 根据名字找位置
        delnum = 0
        for i, stu in enumerate(students):
            if stu['name'] == name:
                delnum = i  # 要删除的位置
                break
    
        #students.pop(delnum)#删除
        print(students[delnum]) #根据位置查找
    
    def avg_age(students):
        print('统计平均年龄')
        print('	**************平均年龄*************')
        sum = 0 #总年龄
        for stu in students:
            sum += int(stu['age']) #年龄是字符串需要转换!
        print(f'平均年龄:{sum/len(students)}')
    
    if __name__ == '__main__':
        students = [] # 总学生列表!
        while True:
            show_menu()
            num = int(input('请输入选择的菜单(1-7):'))
            if num==7:
                print('感谢使用,退出程序!')
                flag = input('确定要退出么(y退出/n不退出!):?')
                if flag=='y':
                    break  #循环结束
                else:
                    continue # 中断本次
            elif num ==1:
                students= add_stu() #增加
                print(f'增加完了,所有的学生总数{len(students)}')
                continue
            elif num==2:
                del_stu(students)
            elif num==3:
                update_stu(students)
            elif num==4:
                show_list(students)
            elif num==5:
               search_name(students)
            elif num==6:
                avg_age(students)
            else:
                print('输入有误,请重新输入!')
  • 相关阅读:
    期望
    更改开机默认操作系统及等待时间修改
    Python排序
    Python IDLE入门 + Python 电子书
    Python基础教程——1基础知识
    Java:谈谈protected访问权限
    三星I9100有时不能收发彩信完美解决!中国移动
    java继承的权限问题
    Python基础教程——2列表和元组
    访问控制和继承(Java)
  • 原文地址:https://www.cnblogs.com/weisimin123/p/13897028.html
Copyright © 2011-2022 走看看