2018-10-15作业

import sys
import json
a = 'py1807'
all_student = {'user1': ['hjj', {'name': 'hjj', 'age': 12, 'phone': 1234, 'stu_id': 'py1807000'}]}
bian = '* '*30
f = '>>>>'
# lstrip()

def add_student(user):

        global f
        global bian
        pd = 1

        while pd == 1:
            with open('/Users/hujianjun/Desktop/student.json', 'r') as f:
                stu_message = json.load(f)
            num = stu_message[user][len(stu_message[user]) - 1]['stu_id']
            new_num = ''
            for x in num[6:10]:
                new_num += x
            new_num = str(new_num).lstrip('0')

            num = int(new_num) + 1
            stu_id = '%s%s' % (a, str(num).rjust(4, '0'))
            stu_name = input('请输入学生姓名:'.rjust(19, ' '))
            stu_age = input('请输入学生年龄:'.rjust(19, ' '))
            stu_phone = input('请输入学生电话:'.rjust(19, ' '))
            stu_message[user].append(stu_name)
            stu_message[user].append({'name': stu_name, 'age': stu_age, 'phone': stu_phone, 'stu_id': '%s' % stu_id})

            with open('/Users/hujianjun/Desktop/student.json', 'w') as f1:
                json.dump(stu_message, f1)
            print('添加成功!!!'.rjust(19, ' '))
            b = '1.继续添加'
            c = '2.返回上一页'
            pd11 = input('%s\n%s\n%s\n%s' % (bian.rjust(71, ' '), b.rjust(41, ' '), c.rjust(42, ' '),
                                                 bian.rjust(71, ' ')))
            if pd11 == '2':
                break
            elif pd11 == '1':
                continue
            else:
                b = '你的输入有误返回到上一层'
                print('%s\n' % b.rjust(44, ' '))
                break
        

def select_student(user):
    global f
    global bian
    pd = 2
    while pd == 2:
        b = '1.查询所有学生信息'
        c = '2.根据学生姓名查询信息'
        pd_select = input('%s\n%s\n%s\n%s' % (bian.rjust(71, ' '), b.rjust(41, ' '), c.rjust(42, ' '), bian.rjust(71, ' ')))
        with open('/Users/hujianjun/Desktop/student.json', 'r') as f:
            stu_message = json.load(f)
        if pd_select == '1':
            for x in stu_message[user]:
                print(' '*10, x)
            b = '1.继续查询'
            c = '2.返回上一页'
            pd11 = input('%s\n%s\n%s\n%s' % (bian.rjust(71, ' '), b.rjust(41, ' '), c.rjust(42, ' '), bian.rjust(71, ' ')))

            if pd11 == '2':
                break
            elif pd11 == '1':
                pass
            else:
                b = '你的输入有误请重新输入'
                print('%s\n' % b.rjust(44, ' '))
                continue

        elif pd_select == '2':
            name_index = 0
            stu_pd = 0
            b = '请输入你想要查询的学生姓名:'
            name_select = input('%s' % b.rjust(42, ' '))
            for x in stu_message[user]:
                name_index += 1
                if name_select == x:
                    print(' '*10, stu_message[user][name_index])
                    stu_pd = 1
            if stu_pd == 0:
                b = '你查找的学生不存在'
                print('%s' % b.rjust(40, ' '))
            b = '1.继续查询'
            c = '2.返回上一页'
            pd11 = input('%s\n%s\n%s\n%s' % (bian.rjust(71, ' '), b.rjust(41, ' '), c.rjust(42, ' '), bian.rjust(71, ' ')))

            if pd11 == '2':
                break
            elif pd11 == '1':
                pass
            else:
                b = '你的输入有误返回到上一层'
                print('%s\n' % b.rjust(44, ' '))
                break
        else:
            b = '你的输入有误重新输入'
            print('%s\n' % b.rjust(44, ' '))
            continue


def delete_student(user):
    pd = 3
    global f
    global bian
    while pd == 3:
        pd_delete = input('请输入你想要删除的学生姓名:')

        index = 0
        name_index = []
        name_pd = 0
        with open('/Users/hujianjun/Desktop/student.json', 'r') as f:
            stu_message = json.load(f)
        if len(stu_message[user]) == 1:
            print('学生信息为空无法进行删除操作,返回到主页面')
            break
        else:
            for x in stu_message[user][:]:
                index += 1
                if pd_delete == x:
                    name_index.append(index)
                    name_pd = 1
            if name_pd == 0:
                print('你输入的学生不存在,请重新输入')
                continue
            print(len(name_index))
            for x1 in range(len(name_index)):
                print('序号:%d' % name_index[x1], stu_message[user][name_index[x1]])
            qr_delete = input('请确认删除信息,输入序号进行删除,r.重新输入,q.返回上一层\n')

            if qr_delete == 'r':
                continue
            elif qr_delete == 'q':
                break
            else:
                if int(qr_delete) not in name_index[:]:
                    print(qr_delete, name_index)
                    print('你输入序号有误重新输入')
                else:

                    qr = int(qr_delete)

                    stu_message[user].pop(qr)
                    stu_message[user].pop(qr-1)
                    with open('/Users/hujianjun/Desktop/student.json', 'w') as f:
                        json.dump(stu_message, f)
                    # del stu_message[user][int(qr_delete)-1]
                    # del stu_message[user][int(qr_delete)]
                    print('删除成功')
                    qr_1_delete = input('1.继续删除2返回上一层')
                    if qr_1_delete == '1':
                        continue
                    elif qr_1_delete == '2':
                        break
                    else:
                        print('输入信息有误返回到上一层!')




def manue(user):

    while  True:
        print(' '*10, '* * * * * * * * * * * * hjj学生管理系统 * * * * * * * * * * *\n'
                      '           *                                                         *')
        b = '2.查找学生'
        c = '3.删除学生'
        d = '4.退出系统'
        e = '* '*30

        g = '*                                                         *'
        a = '1.添加学生\n%s\n%s\n%s\n%s\n%s\n%s\n%s' % (g.rjust(70, ' '), b.rjust(41, ' '), g.rjust(70, ' '),\
                                                                c.rjust(41, ' '), g.rjust(70, ' '),d.rjust(41, ' '), e.rjust(71, ' '))
        pd1 = input(a.rjust(452, ' '))
        if pd1 == '1':
            add_student(user)

        elif pd1 == '2':
            select_student(user)
        elif pd1 == '3':
            delete_student(user)
        elif pd1 == '4':
            sys.exit()
        else:
            b = '你的输入有误请重新输入'
            print('%s\n' % b.rjust(44, ' '))
            pd1 = '1'


# manue('user1')
def login():
    while True:
        print('1.登录')
        print('2.注册')
        login_pd = input()
        with open('/Users/hujianjun/Desktop/user.json', 'r') as f:
            user_massage = json.load(f)

        if login_pd == '2':

            while True:
                user = input('请输入账号')
                pwd = input('请输入密码')
                message = {user: pwd}
                pd = 0
                for x in user_massage:
                    if x == user:
                        pd = 1
                        print('该账号已经被注册!请重新注册')
                        continue
                if pd == 0:
                    user_massage[user] = pwd
                    print(user_massage)
                    with open('/Users/hujianjun/Desktop/user.json', 'w') as f1:
                        json.dump(user_massage, f1)

                    with open('/Users/hujianjun/Desktop/student.json', 'r') as f:
                        user_massage = json.load(f)
                    user_massage[user] = ['hjj', {'name': 'hjj', 'age': 12, 'phone': 1234, 'stu_id': 'py18070001'}]
                    with open('/Users/hujianjun/Desktop/student.json', 'w') as f2:
                        json.dump(user_massage, f2)
                    print('注册成功!!返回到主页')
                    break
        elif login_pd == '1':
            while True:
                user = input('请输入账号')
                pwd = input('请输入密码')
                pd1 = 0
                for x in user_massage:
                    if user == x:
                        pd1 = 1
                        if user_massage[x] == pwd:
                            pd1 = 2
                            break
                if pd1 == 2:
                    manue(user)
                elif pd1 == 1:
                    print('密码错误!请重新输入')
                elif pd1 == 0:
                    print('账户不存在请查证后输入')
login()

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,376评论 6 491
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,126评论 2 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 156,966评论 0 347
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,432评论 1 283
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,519评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,792评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,933评论 3 406
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,701评论 0 266
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,143评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,488评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,626评论 1 340
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,292评论 4 329
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,896评论 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,742评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,977评论 1 265
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,324评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,494评论 2 348

推荐阅读更多精彩内容