首页 > 其他分享 >管理系统练习

管理系统练习

时间:2022-10-05 17:44:56浏览次数:50  
标签:管理系统 练习 update next base user strip input

管理系统练习

叠甲:

​ 该管理系统只是一次尝试、代码结构、系统功能都未完善.

​ (仅代表个人想法,不喜出门左转,写着写着累了,猪脑子过载了,就这样了,毁灭吧)

# coding:utf-8
'''
功能需求:
虚构一个管理员数据库,可以根据数据库里面的数据,输入相应的用户名密码以及权限密钥进入管理员系统(无密钥则是普通用户,密钥为manager)
管理员有增删改查的权限
其他 普通用户  只有增的权限,(任何用户都可以通过注册用户,进行添加,但不能添加已有用户)
(该管理系统只是一次尝试、代码结构、系统功能都未完善、仅代表个人想法,不喜出门左转)
'''
# 定义一个内置的字典数据库
base_data = {'user_name': ['Jason', 'Jack', 'Tony', 'Tom', 'Tank'],
             'pass_word': ['123', '110', '119', '120', '911'],
             'age': ['18', '20', '22', '25', '26'],
             'sex': ['man', 'woman', 'woman', 'woman', 'man'],
             'Job': ['teacher', 'farmer', 'cooker', 'fisher', 'driver']
             }


# 定义一个输出用户操作页面的函数,在后面便于调用
def page_table():
    info_username = '''
         --------       Info Every Baby           --------
         --------    Please input your operate    --------
         --------    Number 1 : 登录系统           --------
         --------    Number 2 : 注册账号           --------
         --------    Number 3 : 退出系统           --------
         --------           END                   --------
    '''
    print(info_username)


page_table()


def manager_add():
    while True:
        user_name = input('请输入您要注册的用户名>>>:').strip()
        pass_word = input('请输入您的密码>>>:').strip()
        age = input('请输入您的年龄>>>:').strip()
        sex = input('请输入您的性别>>>:').strip()
        job = input('请输入您的工作>>>:').strip()
        if user_name in base_data['user_name']:
            print('账号已存在,请选择接下来的操作')
            next_add = input('继续添加(y确定,其他返回首页)').strip()
            if next_add == 'y':
                continue
            else:
                return

        else:
            base_data['user_name'].append(user_name)
            base_data['pass_word'].append(pass_word)
            base_data['age'].append(age)
            base_data['sex'].append(sex)
            base_data['Job'].append(job)
            print(f'您注册的账号为:{user_name}')
            print('请选择您接下来需要进行的操作:')
            next_add = input('继续添加(y确定,其他返回首页)').strip()
            if next_add == 'y':
                continue
            else:
                return

def manager_del():
    while True:
        delete_user = input('请输入您要删除的用户名:').strip()
        if delete_user in base_data['user_name']:
            base_data['user_name'].remove(delete_user)
            print('删除成功')
            print('请选择您接下来需要进行的操作:')
            next_del = input('继续删除(y确定,其他返回首页)').strip()
            if next_del == 'y':
                continue
            else:
                return
        else:
            print('您输入的用户不存在')
            print('请选择您接下来需要进行的操作:')
            next_del = input('继续删除(y确定,其他返回首页)').strip()
            if next_del == 'y':
                continue
            else:
                return


def manager_update():
    while True:
        manager_secelt_user = input(
                                    '1.修改用户名\n'
                                    '2.修改密码\n'
                                    '3.修改性别\n'
                                    '4.修改年龄\n'
                                    '5.修改职业\n'
                                    '请输入您要修改的数据值:'
                                    )
        if manager_secelt_user == '1':
            update_user = input('请输入您要修改用户名的用户名:').strip()
            update_user_after = input('请输入修改后的用户名:').strip()
            if update_user in base_data['user_name']:
                # 根据用户输入的用户名,通过index()方法检索下标,通过下标修改相应的值
                base_data['user_name'][
                    base_data['user_name'].index(update_user)] = update_user_after
                print(f'您已成功修改用户名{update_user},为{update_user_after}')
                next_update = input('继续修改(y确定,其他返回首页)').strip()
                if next_update == 'y':
                    continue
                else:
                    return
            else:
                print('您输入的用户名有误')
                next_update = input('继续修改(y确定,其他返回首页)').strip()
                if next_update == 'y':
                    continue
                else:
                    return
        elif manager_secelt_user == '2':
            update_user = input('请输入您要修改密码的用户名:').strip()
            update_password_after = input('请输入修改后的密码:').strip()
            if update_user in base_data['user_name']:
                base_data['pass_word'][
                    base_data['user_name'].index(update_user)] = update_password_after
                print(f'您已成功修改用户名{update_user}的密码,为{update_password_after}')
                next_update = input('继续修改(y确定,其他返回首页)').strip()
                if next_update == 'y':
                    continue
                else:
                    return
            else:
                print('您输入的用户名有误')
                next_update = input('继续修改(y确定,其他返回首页)').strip()
                if next_update == 'y':
                    continue
                else:
                    return
        elif manager_secelt_user == '3':
            update_user = input('请输入您要修改性别的用户名:').strip()
            update_sex_after = input('请输入修改后的性别:').strip()
            if update_user in base_data['user_name']:
                base_data['sex'][
                    base_data['user_name'].index(update_user)] = update_sex_after
                print(f'您已成功修改用户名{update_user}的性别,为{update_sex_after}')
                next_update = input('继续修改(y确定,其他返回首页)').strip()
                if next_update == 'y':
                    continue
                else:
                    return
            else:
                print('您输入的用户名有误')
                next_update = input('继续修改(y确定,其他返回首页)').strip()
                if next_update == 'y':
                    continue
                else:
                    return
        elif manager_secelt_user == '4':
            update_user = input('请输入您要修改年龄的用户名:').strip()
            update_age_after = input('请输入修改后的年龄:').strip()
            if update_user in base_data['user_name']:
                base_data['age'][
                    base_data['user_name'].index(update_user)] = update_age_after
                print(f'您已成功修改用户名{update_user}的性别,为{update_age_after}')
                next_update = input('继续修改(y确定,其他返回首页)').strip()
                if next_update == 'y':
                    continue
                else:
                    return
            else:
                print('您输入的用户名有误')
                next_update = input('继续修改(y确定,其他返回首页)').strip()
                if next_update == 'y':
                    continue
                else:
                    return
        elif manager_secelt_user == '5':
            update_user = input('请输入您要修改职业的用户名:').strip()
            update_job_after = input('请输入修改后的职业:').strip()
            if update_user in base_data['user_name']:
                base_data['Job'][
                    base_data['user_name'].index(update_user)] = update_job_after
                print(f'您已成功修改用户名{update_user}的职业,为{update_job_after}')
                next_update = input('继续修改(y确定,其他返回首页)').strip()
                if next_update == 'y':
                    continue
                else:
                    return
            else:
                print('您输入的用户名有误')
                next_update = input('继续修改(y确定,其他返回首页)').strip()
                if next_update == 'y':
                    continue
                else:
                    return
        else:
            print('请输入正确的操作数字!')
            next_next = input('继续(y确定,其他返回首页)').strip()
            if next_next == 'y':
                continue
            else:
                return


def user_operate(is_True):
    flag = True

    while flag:
        # 定义一个变量,用来接收用户的选择

        count = 0
        while count < 3:
            select_number = input('请输入您的选择:数字1、2、3>>>:').strip()
            # 根据用户所输入的选择,判断用户所需要进行的操作
            if select_number == '1':
                # 登录页面,定义账号密码接收用户输入的数据
                name = input('请输入您的账号:').strip()
                password = input('请输入您的密码:').strip()
                function = input('请输入您的身份验证码:').strip()
                # int(password)

                # 定义两个空列表,用来接收for循环字典出来的用户名和密码
                base_user_name = []
                base_pass_word = []
                # base_function = []

                # 循环遍历数据字典里面的用户名,并把遍历出来的用户名添加到创建的空列表中
                for i in base_data['user_name']:
                    base_user_name.append(i)
                # print(base_user_name)

                # 循环遍历数据字典里面的密码,并把遍历出来的密码添加到创建的空列表中
                for j in base_data['pass_word']:
                    base_pass_word.append(j)
                # print(base_pass_word)

                # 将用户列表和密码列表使用zip函数解压成一个二维矩阵
                # (zip()方法可以将账号、密码的关系一一对应)
                base_account_secrecy_zip = list(zip(base_user_name, base_pass_word))
                # 将解压的用户、密码二维矩阵转换为字典
                base_account_secrecy = dict(base_account_secrecy_zip)

                # 定义一个子集空字典,用.setdefault()方法将接收的数据转换为字典
                baby = {}
                baby.setdefault(name, password)

                # 使用if判断语句,判断输入的账密字典,是否为我们转换的字典的子集
                if baby.items() < base_account_secrecy.items():
                    if function == 'manager':
                        print(f'欢迎管理员:{name},登录成功')
                        manager_secelt = input('1.增加用户\n'
                                               '2.删除用户\n'
                                               '3.修改用户信息\n'
                                               '4.查询用户信息\n'
                                               '请选择您接下来需要进行的操作:')
                        if manager_secelt == '1':
                            manager_add()
                        elif manager_secelt == '2':
                            manager_del()

                        elif manager_secelt == '3':
                            manager_update()

                        # user_operate(True)
                        elif manager_secelt == '4':
                            print(base_data.items())

                    else:
                        print(f'欢迎用户:{name},登录成功')
                        user_select = input('1.修改个人信息\n'
                                            '2.返回首页\n'
                                            '请输入您要进行的操作:')
                        if user_select == '1':
                            while True:
                                user_select_user = input(
                                    '1.修改用户名\n'
                                    '2.修改密码\n'
                                    '3.修改性别\n'
                                    '4.修改年龄\n'
                                    '5.修改职业\n'
                                    '请输入您要修改的数据值:'
                                )
                                if user_select_user == '1':
                                    update_user = input('请输入您的用户名:').strip()
                                    update_user_after = input('请输入修改后的用户名:').strip()
                                    if update_user == name:
                                        base_data['pass_word'][
                                            base_data['user_name'].index(update_user)] = update_user_after
                                        print(f'您已成功修改用户名{update_user},为{update_user_after}')
                                        next_update = input('继续修改(y确定,其他返回首页)').strip()
                                        if next_update == 'y':
                                            continue
                                        else:
                                            return
                                    else:
                                        print('输入用户名有误!请输入的您的用户名')
                                        next_update = input('继续修改(y确定,其他退出程序)').strip()
                                        if next_update == 'y':
                                            continue
                                        else:
                                            return
                                elif user_select_user == '2':
                                    update_user = input('请输入您的用户名:').strip()
                                    update_pwd_after = input('请输入修改后的密码:').strip()
                                    if update_user == name:
                                        base_data['pass_word'][
                                            base_data['user_name'].index(update_user)] = update_pwd_after
                                        print(f'您已成功修改用户名{update_user}的密码,为{update_pwd_after}')
                                        next_update = input('继续修改(y确定,其他返回首页)').strip()
                                        if next_update == 'y':
                                            continue
                                        else:
                                            return
                                    else:
                                        print('输入用户名有误!请输入的您的用户名:')
                                        next_update = input('继续修改(y确定,其他退出程序)').strip()
                                        if next_update == 'y':
                                            continue
                                        else:
                                            return
                                elif user_select_user == '3':
                                    update_user = input('请输入您的用户名:').strip()
                                    update_sex_after = input('请输入修改后的性别:').strip()
                                    if update_user == name:
                                        base_data['sex'][
                                            base_data['user_name'].index(update_user)] = update_sex_after
                                        print(f'您已成功修改用户名{update_user}的性别,为{update_sex_after}')
                                        next_update = input('继续修改(y确定,其他返回首页)').strip()
                                        if next_update == 'y':
                                            continue
                                        else:
                                            return
                                    else:
                                        print('输入用户名有误!请输入的您的用户名')
                                        next_update = input('继续修改(y确定,其他退出程序)').strip()
                                        if next_update == 'y':
                                            continue
                                        else:
                                            return
                                elif user_select_user == '4':
                                    update_user = input('请输入您的用户名:').strip()
                                    update_age_after = input('请输入修改后的年龄:').strip()
                                    if update_user == name:
                                        base_data['age'][
                                            base_data['user_name'].index(update_user)] = update_age_after
                                        print(f'您已成功修改用户名{update_user}的年龄,为{update_age_after}')
                                        next_update = input('继续修改(y确定,其他返回首页)').strip()
                                        if next_update == 'y':
                                            continue
                                        else:
                                            return
                                    else:
                                        print('输入用户名有误!请输入的您的用户名')
                                        next_update = input('继续修改(y确定,其他退出程序)').strip()
                                        if next_update == 'y':
                                            continue
                                        else:
                                            return
                                elif user_select_user == '5':
                                    update_user = input('请输入您的用户名:').strip()
                                    update_job_after = input('请输入修改后的职业:').strip()
                                    if update_user == name:
                                        base_data['Job'][
                                            base_data['user_name'].index(update_user)] = update_job_after
                                        print(f'您已成功修改用户名{update_user}的职业,为{update_job_after}')
                                        next_update = input('继续修改(y确定,其他返回首页)').strip()
                                        if next_update == 'y':
                                            continue
                                        else:
                                            return
                                    else:
                                        print('输入用户名有误!请输入的您的用户名')
                                        next_update = input('继续修改(y确定,其他退出程序)').strip()
                                        if next_update == 'y':
                                            continue
                                        else:
                                            return


                        elif user_select == '2':
                            return
                else:
                    print('登录失败')
                    count += 1
                    if count == 3:
                        return False

            elif select_number == '2':
                manager_add()

            elif select_number == '3':
                Define = input('您确定要退出吗?y(确定,其他继续操作)>>:').strip()
                if Define == 'y':
                    print('退出成功!')
                    return False
                    flag = False
                else:
                    user_operate(True)
            else:
                count += 1
                if count == 3:
                    return False
# 调用函数 (没什么用,当时想着用就试了试,目前不想改了,累了,毁灭吧)
user_operate(True)

标签:管理系统,练习,update,next,base,user,strip,input
From: https://www.cnblogs.com/HaiMan/p/16755993.html

相关文章