美文网首页
day14、学生管理系统 2019-01-10

day14、学生管理系统 2019-01-10

作者: 绝世小丑 | 来源:发表于2019-01-11 11:08 被阅读0次

一、复习

1.json 数据

注意:一个 json 数据有且只有一个数据,并且数据类型是 json 支持的数据类型。
例如:
数字:100、20.25、-78.321
字符串:用双引号框起来(支持转义字符、编码字符)。
布尔:true、false
数组:相当于 python 中的列表;
字典:相当于 python 中 的字典(字典里的 key 值必须是字符串);
null:相当于 python 中 的 None ,表示空。

json --> python:loads(字符串)
load(文件对象)
注意:字符串里面的数据必须是 json 数据。

python --> json:dumps(对象)
dump(对象,文件对象)
注意:对象里面的数据必须是 python 数据。

2.异常处理

try-except(-finally):捕获所有的异常
try-except (错误类型1, 错误类型2···)(-finally):同时捕获多个指定错误类型的异常,做出相同的处理。
try-except 错误类型1-except 错误类型2···(-finally):同时捕获多个指定错误类型的异常,做出不相同的处理。

finally:
在后面都可以加一个 finally ,不管代码中是否出现异常,也不管出现异常后是否被捕获,finally 后面的代码都会执行。
try:
代码段1
except:
代码段2
finally:
代码段3

3.抛出异常
raise 错误类型(这个错误类型必须是一个类,并且是 Exception 的子类)
例如:

def new_ex():
    try:
        print('adc'[5])
    except IndexError:
        print('出现异常')
    finally:
        print('test')


def main():
    new_ex()


if __name__ == '__main__':
    main()

运行效果:

出现异常
test

二、学生管理系统

对以前学生管理系统的改动:
1、把教师(管理者)数据的存储方式改为教师姓名为 key ,登录密码为 value 值。
2、存学生信息的 json 文件也不再单独是只存学生信息,还可以存对应的老师信息等。
3、把登录界面的功能和学生管理的功能分别封装到不同的函数里。
4、不同的教师对应不同的学生群体

1.数据结构设计
a.一个学生管理可以管理多个学生   -> 同时管理多个学生的数据结构是列表
b.一个学生可以存储多种信息,包括:姓名、年龄、电话、学号(自动产生) -> 每个学生对应的数据结构是字典

管理学生整个的结构是:
[
    {'name': , 'age': , 'tel': , 'id': },
    {'name': , 'age': , 'tel': , 'id': },
    {'name': , 'age': , 'tel': , 'id': },
    ....
]

整个管理系统的数据结构:
{
    'all_student': [
        {'name': , 'age': , 'tel': , 'id': },
        {'name': , 'age': , 'tel': , 'id': },
        {'name': , 'age': , 'tel': , 'id': },
        ....
    ],
    'max_number': 1
    
}

2.文件选择(数据持久化) 
保存的数据对象是字典 -> 选择json文件
一个用户对应一个json文件, json文件名就是用户名

相关文章

网友评论

      本文标题:day14、学生管理系统 2019-01-10

      本文链接:https://www.haomeiwen.com/subject/ckzarqtx.html