python学习之写一个小型数据库实现增删改查day10/下午

数据库增删改查


数据如下
a={  '001':{'name':'张三','age':18,'address':'北京'},
    '002':{'name':'张二','age':28,'address':'上海'},
    '003':{'name':'张大','age':38,'address':'北京'},
    '004':{'name':'张四','age':28,'address':'上海'},
    '005':{'name':'张六','age':38,'address':'北京'}
}


代码如下
class StudentAdmin():
    @staticmethod
    def write():                #定义写入数据库的方法
        f=open("a.txt","w",encoding="utf-8")
        f.write(str(a))
        f.close()
    @staticmethod
    def read():                 #定义将文件从数据库读取出来的方法
        f=open("a.txt","r",encoding="utf-8")
        c=f.read()
        f.close()
        return eval(c)
a=StudentAdmin.read()

while True:

    bh=int(input("请输入编号,1:增加,2:删除,3:修改,4:查询"))
    if bh==1:         #增加
        xh=input("请输入学号")
        if xh in a.keys():
            print("学号重复")
            continue
        else:
            x={}
            x["name"]=input("请输入姓名")
            x["age"]=int(input("请输入年龄"))
            x["address"]=input("请输入地址")
            a[xh]=x
            print(a)

    elif bh==2:            #删除
        xh=input("请输入学号")
        if xh not in a.keys():
            print("查无此人")
            continue
        else:
            print("要删除的人是",a[xh])
            del a[xh]
            print(a)
    elif bh==3:             #修改
        xh=input("请输入学号")
        if xh not in a.keys():
            print("查无此人")
            continue
        else:
            a[xh]["name"]=input("请输入名字")
            a[xh]["age"] =int(input("请输入年龄"))
            a[xh]["address"]=input("请输入地址")
        print(a)

    elif bh==4:                 #修改
        xh=input("请输入学号")
        if xh not in a:
            print("查无此人")
        else:
            print(a[xh])

    elif bh==0:        #写入数据库,并写入文件
        StudentAdmin.write()
        print("退出程序")
        break
    else:
        print("输入错误")

猜你喜欢

转载自blog.csdn.net/qq_39112101/article/details/88065922