学生信息管理系统v1.0 - - python

- 内容

  • 实现一个学生信息管理系统,要求有学生姓名、身高、体重、学号、班级和手机号码。
  • 实现学生信息的增、删、改、查功能。
  • 用学号作为Key,用字典保存学生信息。

在学习此系列之前,先说说今天代码里所用到的知识

- 字典

格式如下:

dict = {'key1':'value1','key2':'value2'}
  • 每个键(key)值(value)对用冒号分割
  • 每对之间用逗号隔开
  • 键必须是唯一的,但值不必。值可以取任何数据类型,但键必须是不可变的,如字符串、数字或元组。

- 定义/创建字典

格式如下:

dict1 = {'Alice':'girl','Bob':'boy'}
dict2 = {'abc':123}
dict3 = {'abc':456,20:22}

- 访问字典

格式如下:

dict = {'Name':'pinkward'}
print("dict['Name']:",dict['Name'])

- 添加/修改字典

  • 向字典添加新内容的方法是增加新的键值对,修改或删除已有的键值对

格式如下:

dict = {'Name':'pinkward','Age':18,'Class':'Class1'}
dict['Age'] = 20    #更新Age
dict['School'] = 'XUPT'    #添加信息
print("dict[Age]:",dict['Age'])
print("dict['School]:",dict['School'])

运行结果:

用python输入学号 python输入学号姓名_用python输入学号

- 删除字典

格式如下:

dict = {'Name':'pinkward','Age':18,'Class':'Class1'}
del dict['Name']
print(dict)

运行结果:

用python输入学号 python输入学号姓名_用python输入学号_02

- 字典的特性

  • 字典值可以没有限制地取任何python对象,既可以是标准的对象,也可以是用户定义的,但键不行。
  • 不允许同一个键出现两次。创建时如果同一个键被赋值两次,则后一个值会被记住。
  • 键必须不可变,所以可以用数字,字符串或元组充当,而用列表就不行。

- 学生信息管理系统v1.0

  • 实现一个学生信息管理系统,要求有学生姓名、身高、体重、学号、班级和手机号码。
  • 实现学生信息的增、删、改、查功能。
  • 用学号作为Key,用字典保存学生信息。

代码如下:

# coding: utf-8
# Time: 2021/9/15 15:37
# Author: pinkward
# Software: PyCharm

# 学生信息管理系统v1.0

studic = {
 'x': {'name': 'pinkward', 'height(cm)': '180', 'weight(kg)': '65', 'class': 'x1', 'tel': '11111111111'}
} # 初始存储数据 子字典形式储存
while 1: # 外循环 控制功能正确使用
    while 1: # 内循环 控制由菜单选项进入功能界面正确使用 即整个系统框架正确
        print() # 空打印即换行 用于清楚划分界限
        print('欢迎使用学生信息管理系统v1.0!'.center(50))
        print('系统菜单'.center(52))
        print('1.添加学生信息'.center(50))
        print('2.删除学生信息'.center(50))
        print('3.修改学生信息'.center(50))
        print('4.查看学生信息'.center(50))
        print('5.退出管理系统'.center(50)) # 打印菜单选项
        opt = input('请选择功能: ') # 输入选项
        if not opt or opt not in '12345' or len(opt) > 1: # 确保输入值为‘12345’中任一项
            print('---无效选项!请重新选择:---')
            continue # 输入无效选项继续循环
        else:
            break # 正确输入后跳出循环 进入功能选项
    if opt in '1': # 1功能板块
        xh = input('请输入学生学号: ') # 输入学号
        if xh in studic: # 判断是否存在此学号
            print('---此学号已存在!请重新输入:---')
        else:
            name = input('请输入姓名: ')
            height = input('请输入身高(cm): ')
            weight = input('请输入体重(kg): ')
            bj = input('请输入班级: ')
            tel = input('请输入电话: ')
            studic[xh] = {'name':name,'height(cm)':height,'weight(kg)':weight,'class':bj,'tel':tel}
            print('---已成功录入学生信息!---') # 无此学号即可录入相关信息 实现添加信息功能
    elif opt in '2': # 多重if 2功能板块
        xh = input('请输入学生学号: ') # 输入学号
        if xh not in studic: # 判断是否存在此学号
            print('---此学号不存在!请重新输入:---')
        else:
            del studic[xh] # 删除键即删除值 实现删除信息功能
            print('---成功删除该学号学生信息!---')
    elif opt in '3': # 3功能板块
        xh = input('请输入学生学号: ')
        if xh not in studic: # 判断是否存在此学号
            print('---此学号不存在!请重新输入:---')
        else:
            name = input('请输入姓名: ')
            height = input('请输入身高(cm): ')
            weight = input('请输入体重(kg): ')
            bj = input('请输入班级: ')
            tel = input('请输入电话: ')
            studic[xh] = {'name': name, 'height(cm)': height, 'weight(kg)': weight, 'class': bj, 'tel': tel}
            print('---已成功修改学生信息!---') # 存在此学号 即可输入相关信息 实现信息修改功能
    elif opt in '4': # 4功能板块
        for x in studic.items(): # 循环初始存储数据的每一项 即实现查询信息功能
            print(x)
    else: # 即输入5功能板块
        break # 跳出外循环 即退出管理系统
print('---已成功退出!---')
print('感谢使用学生信息管理系统v1.0!'.center(50))