栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

加入登录的学生信息管理系统

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

加入登录的学生信息管理系统

这是本人在平时的一些作业,存在欠缺,希望可以和大家一起讨论改正

"""
    登录系统
"""
import random
def cg_verification(len=6):
    ''' 随机生成6位的验证码 '''
    '''这里的list1可以取任何值,但是他里面一定要是以字符串的形式存在的,因为后面要使用到join,join是字符串所特有的
    下面的list1使用循环只是为了偷懒啦,也可以手动输入,等下就可以使用手动输入,输入一些生僻字'''
    list1 = []
    for i in range(10):  # 0-9数字
        list1.append(str(i))
    for i in range(65, 91):  # 对应从“A”到“Z”的ASCII码
        list1.append(chr(i))
    for i in range(97, 123):  # 对应从“a”到“z”的ASCII码
        list1.append(chr(i))
    cheng = random.sample(list1, len)  # 从list1中随机获取6个元素,作为一个片断返回
    gong = ''.join(cheng)  # cheng的类型从列表转化为字符串
    return gong
'''验证码-------------------------------------生成程序----------------------------------------------验证码'''
users = {"陈": "857", "刘": "996"}#使用列表时会出现删除一个值他们的对应关系会发生变化
is_login_success = False
count = 0
inputUser = input("用户名:")
inputPassword = input("密码是:")
yzm=cg_verification(len=6)
print(yzm)
user_yzm=input("请输入验证码:")
while user_yzm != yzm:#先验证验证码再对密码进行检验
    yzm = cg_verification(len=6)
    print("33[1;30;41m验证码错误,请重新输入验证码33[0m ")
    print(yzm)
    #print("33[1;30;41m验证码错误,请重新输入验证码33[0m ")
    user_yzm=input("验证码错误,请重新输入验证码:")
while not is_login_success:#这里加个not是为了更加符合逻辑常识
    #inputUser = input("用户名:")
    if inputUser not in users:
        print("用户名不存在")
        inputUser = input("用户名:")
        inputPassword = input("密码是")
    else:
        #inputPassword = input("密码是:")
        if users[inputUser] == inputPassword:
            print("login success!,welcome to new land", inputUser)
            is_login_success = True
        else:
            print("33[1;30;41m输入的密码与账号不对应,请重新输入一个匹配的账号和密码33[0m ")#当密码输入错误时,有两种可能的原因,第一种就是用户填错了自己的账号,第二种就是用户把密码填错了,所以在后面就需要用户重新输入账号和密码
            count += 1
            inputUser = input("用户名:")
            inputPassword = input("密码是:")
            yzm = cg_verification(len=6)#这里的了len是验证码的长度,len可以等于任何长度,你可以随意更改
            print(yzm)
            user_yzm = input("请输入验证码:")
            #yzm = generate_verification_code(len=6)
            while user_yzm != yzm:
                yzm = cg_verification(len=6)
                print(yzm)
                print("33[1;30;41m验证码错误,请重新输入验证码:33[0m ")
                user_yzm = input("验证码:")
            if count == 3:
                print("33[1;30;41m你的账号已经被锁定33[0m ")
                break


"""
管理系统
"""
if is_login_success:
    print("33[1;30;47m欢迎管理学生信息管理系统!33[0m ".center(65))
    print('|---------------------------------------------------------|')
    print("33[1;30;47m1.新建学生信息33[0m ".center(72))
    print("33[1;30;47m2.显示全部信息33[0m ".center(72))
    print("33[1;30;47m3.查询学生信息33[0m ".center(72))
    print("33[1;30;41m4.删除学生信息33[0m ".center(72))
    print("33[1;30;41m5.修改学生信息33[0m ".center(72))
    print("33[1;30;41m6.退出33[0m ".center(74))
    print('|---------------------------------------------------------|')
    students = [{'姓名': '陈', '电话号码': '1', '家庭住址': '你猜', '身份证号': '想知道吗?诶,就不告诉你', '爱好': '打球,python,hacker'},
            {'姓名': '刘', '电话号码': '1577789855', '家庭住址': '桥洞', '身份证号': '难民,无身份证', '爱好': '捡垃圾'}
            ]
# 列表里面可以加多个字典,这样就可以输入多个人的信息
    while 1:
        print('33[1;30;47m--1.新建 2.显示 3.查询 4.删除 5.修改 6.退出--33[0m'.center(72))
        action = input("请选择你所需要的服务:")  # action = int(input("请选择你所需要的服务:"))这样写在你选择服务时会报错,他会说你输入的不是一个可以转换的数
        '''退出模块功能'''
        if action == '6':  # 应该将退出的放在最前面,这样就可以节省时间
            cg = input("确定要退出吗: 1--yes 2--no:")
            if cg == '1':
                print("33[1;30;42m欢迎下次使用33[0m ".center(72))
                break
            elif cg == '2':
                continue  # 防止用户因为操作错误导致退出
        '''新建模块功能'''
        if action == '1':
            name = input('请输入姓名:')
            phone_number = input('手机号码:')
            home_address = input('家庭住址:')
            id_number = input('身份证号码:')
            student = {
                "姓名": name,
                "电话号码": phone_number,
                "家庭住址": home_address,
                "身份证号码": id_number
            }
            students.append(student)
            for student in students:
                print(student, 'n')
                print('---------------------------'*10)
            print("33[1;30;42m1.存入成功33[0m ".center(72))
            '''显示模块功能'''
        elif action == '2':
            for student in students:
                print(student)
                print("------------------------------------------"*10)
            '''搜索模块功能'''
        elif action == '3':
            name = input("请输入你要搜索的名字:")
            for student in students:
                if student['姓名'] == name:
                    print(student)
                    break
            else:
                print("不存在{}".format(name))  # 这里的format可以将后面的那么填入{}中
                # print("不存在%c" % (name))  # 这样也是适用的
                '''删除模块功能'''
        elif action == '4':
            name = input("请输入姓名:")
            for student in students:
                if student['姓名'] == name:
                    students.remove(student)  # 这里就要注意了,只有list才会用clear,而其他的则是使用remove
                    break
            else:
                print("无法执行,因为不存在该姓名")
                '''修改模块功能'''
        elif action == '5':
            name = input('请输入你要修改的名字:')
            for student in students:
                if student['姓名'] == name:
                    student['姓名'] = input('请输入修改后的名字:')
                    student['电话号码'] = input('请输入修改后的电话号码:')
                    student['家庭住址'] = input('请输入修改后的家庭住址:')
                    student['身份证号'] = input('请输入修改后的身份证号:')
                    print('修改成功')
                    break
            else:
                print("未找到{}".format(name))
        else:
            print("33[1;30;43m该功能还未开发,敬请期待33[0m ".center(72))

菜鸟新人一枚,希望和大家一起共同进步

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/313740.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号