边涯 发表于 2023-1-5 17:22:19

用Python来做一个简单的学生管理系统(附源码)

小学妹说要毕业了,学了一学期Python等于没学,现在要做毕设做不出来,让我帮帮她,晚上去她家吃夜宵。
当时我心想,这不是分分钟的事情,还要去她家,男孩子晚上不要随便出门,要学会保护好自己,于是我花了十分钟给她写了一个发过去,这下不用去她家了~

 
 
代码实战

主要代码,完整代码素材、包括其它版本学生管理系统代码,也有录制好的视频讲解,第八行代码自取即可!
# 学生信息放在字典里面
student_info = [
    {'姓名': '婧琪', '语文': 60, '数学': 60, '英语': 60, '总分': 180},
    {'姓名': '巳月', '语文': 60, '数学': 60, '英语': 60, '总分': 180},
    {'姓名': '落落', '语文': 60, '数学': 60, '英语': 60, '总分': 180},
]

# 死循环 while True 当一直为真
# 源码自取君羊:708525271
while True:
    # 输出
    print(msg)
    # 输入选项
    num = input('请输入你想要进行操作: ')
    # 进行判断, 判断输入内容是什么, 然后返回相应结果
    """
    if .... elif... 多条件判断语句
    """
    if num == '1':
      # 新建学生信息, 输入内容input 输入的内容, 返回字符串数据类型
      name = input('请输入学生姓名: ')
      chinese = int(input('请输入语文成绩: '))
      math = int(input('请输入数学成绩: '))
      english = int(input('请输入英语成绩: '))
      # 字符串与字符串相加: 字符串拼接int 整数数据类型
      score = chinese + math + english# 总分
      # 把信息内容, 放入字典里面
      student_dit = {
            '姓名': name,
            '语文': chinese,
            '数学': math,
            '英语': english,
            '总分': score,
      }
      # 把学生信息 添加到列表里面
      student_info.append(student_dit)

    elif num == '2':
      # for循环遍历, 把列表里元素 一个一个提取出来\t
      print('姓名\t\t语文\t\t数学\t\t英语\t\t总分')
      for student in student_info:
            # student 字典数据类型, 根据键值对, 提取相关内容
            print(
                student['姓名'], '\t\t',
                student['语文'], '\t\t',
                student['数学'], '\t\t',
                student['英语'], '\t\t',
                student['总分'],
            )

    elif num == '3':
      name = input('请输入查询学生姓名: ')
      # 遍历for else 用法
      for student in student_info:
            # 判断 查询名字和学生名字 是否一致
            if name == student['姓名']:
                print('姓名\t\t语文\t\t数学\t\t英语\t\t总分')
                print(
                  student['姓名'], '\t\t',
                  student['语文'], '\t\t',
                  student['数学'], '\t\t',
                  student['英语'], '\t\t',
                  student['总分'],
                )
                # 跳出本次循环 continue 继续循环下面的代码
               
                break
      else:
            # 字符串格式化方法 format
            print('查无此人, 没有{}学生信息!'.format(name))


    elif num == '4':
      name = input('请输入删除学生姓名: ')
      # 把每一个学生的信息, 一个一个提取出来
      for student in student_info:
            # 判断, 输入的学生姓名 是否在学生信息库里面
            if name == student['姓名']:
                # 打印成绩, 查看学生情况
                print('姓名\t\t语文\t\t数学\t\t英语\t\t总分')
                print(
                  student['姓名'], '\t\t',
                  student['语文'], '\t\t',
                  student['数学'], '\t\t',
                  student['英语'], '\t\t',
                  student['总分'],
                )
                # 输入是否要真的删除学生信息 <防止>
                choose = input(f'是否确定要删除{name}信息(y/n)')
                # or 或者的意思
                if choose == 'y' or choose == 'Y':
                  # 删除信息移除列表里面元素 remove()
                  student_info.remove(student)
                  print(f'{name}信息已经被删除!')
                  break
                elif choose == 'n' or choose == 'N':
                  # 跳出循环
                  break
      else:
            print('查无此人, 没有{}学生信息!'.format(name))


    elif num == '5':
      print('修改学生信息')
      name = input('请输入删除学生姓名: ')
      # 把每一个学生的信息, 一个一个提取出来
      for student in student_info:
            # 判断, 输入的学生姓名 是否在学生信息库里面
            if name == student['姓名']:
                # 打印成绩, 查看学生情况
                print('姓名\t\t语文\t\t数学\t\t英语\t\t总分')
                print(
                  student['姓名'], '\t\t',
                  student['语文'], '\t\t',
                  student['数学'], '\t\t',
                  student['英语'], '\t\t',
                  student['总分'],
                )
                # 输入是否要真的删除学生信息 <防止>
                choose = input(f'是否要修改{name}信息(y/n)')
                # or 或者的意思
                if choose == 'y' or choose == 'Y':
                  # 修改操作 和 新建学生信息 有点类似
                  name = input('请输入学生姓名: ')
                  chinese = int(input('请输入语文成绩: '))
                  math = int(input('请输入数学成绩: '))
                  english = int(input('请输入英语成绩: '))
                  # 字符串与字符串相加: 字符串拼接int 整数数据类型
                  score = chinese + math + english# 总分
                  # 修改, 做替换字典修改值
                  student['姓名'] = name
                  student['语文'] = chinese
                  student['数学'] = math
                  student['英语'] = english
                  student['总分'] = score
                  print(f'{name}信息已经修改了!')
                  break
                elif choose == 'n' or choose == 'N':
                  # 跳出循环
                  break
      else:
             print('查无此人, 没有{}学生信息!'.format(name)) 
效果展示


最后

今天的分享就到这里结束了,祝各位新的一年前程似锦!

来源:https://www.cnblogs.com/hahaa/p/17016885.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!
页: [1]
查看完整版本: 用Python来做一个简单的学生管理系统(附源码)