• day10作业


    在猜年龄的基础上编写登录、注册方法,并且把猜年龄游戏分函数处理,如

    1. 登录函数

    2. 注册函数

    3. 猜年龄函数

    4. 选择奖品函数

    5. 登录函数

    def login():
        login_count = 0
        while login_count < 3:
                 username_inp = input('Please input your username:')
                 pwd_inp = input('Please input your password:')
            with open('user_info.txt', 'r', encoding='utf-8') as fr:
    
                for user_info in fr:
                    #user_info = user_info.strip('
    ')
                    username, pwd = user_info.split(':')
                   
                    if username_inp == username.strip() and pwd_inp == pwd.strip():
                        print('登陆成功')
    
    
                        return 1
    
               else:
                        print('用户名或密码错误,请重新登录')
                login_count += 1
        if login_count == 3:
         return 0
    def register():
        username_inp = input('Please input your name:')
        pwd_inp_count = 0
        user_list = {}
        user_list[username_inp] = pwd_inp_count
        while pwd_inp_count < 3:
            pwd_inp = input('Please set your password:')
            re_pwd_inp = input('Please input your password again:')
            if not pwd_inp == re_pwd_inp:
                print('两次密码不符,请重新设置密码')
                continue
            with open('user_info.txt', 'a', encoding='utf-8') as fa:
                fa.write(user_list)
                fa.flush()
                fa.close()
            print('Registered successful')
            return 1
    def guess_age():
        age = 18
        inp_count = 0
    
        while inp_count < 3:  # 用户猜三次
            inp_age = input('请输入你猜的年龄:')
            if not inp_age.isdigit():
                print('请输入数字')
                continue
            int_inp_age = int(inp_age)
            if int_inp_age > 18:  # 猜年龄核心代码
                print('猜大了')
            elif int_inp_age < 18:
                print('猜小了')
            else:
                print('猜对了')
                return 1
    def choose_prizes():
        prize_choose_count = 0
        get_prize_dict = {}  # 获取的奖品信息
        while prize_choose_count < 2:  # 猜对了有两次选择奖品的机会
            prize_goods = {'0': '变形金刚', '1': '布娃娃', '2': '奥特曼', '3': '蜘蛛侠'}
            print(prize_goods)
            prize_choose = input('请输入你想要的奖品:')
            if not prize_choose.isdigit():
                print('请输入数字')
                continue
            prize = prize_goods[prize_choose]
            print(f'你获得的奖品是{prize}')
            if prize in get_prize_dict:  # 将选择的奖品放入字典中,奖品作为key
                get_prize_dict[prize] += 1
            else:
                get_prize_dict[prize] = 1
            prize_choose_count += 1
        print(f'总共获得奖品为:{get_prize_dict}')
    start = input('''请选择:1、登录、2、注册 3、游戏:''')
    if not start.isdigit():
        print('请输入数字')
    start = int(start)
    if start == 1:
        log = login()
        if log == 1:
            gus = guess_age()
            if gus == 1:
                choose_prizes()
    elif start == 2:
        log = login()
        if log == 1:
            gus = guess_age()
            if gus == 1:
                choose_prizes()
        elif log == 0:
            reg = register()
            if reg == 1:
                gus = guess_age()
                if gus == 1:
                    choose_prizes()
    
  • 相关阅读:
    plusOne
    lengthOfLastWord
    maxSubArray
    countAndSay
    学生会管理系统-后端个人总结
    基于图结构实现地铁乘坐线路查询
    地铁线路项目简要分析
    Spring Boot 路由
    Spring Boot 项目配置的使用方法
    IDEA搭建Spring Boot项目
  • 原文地址:https://www.cnblogs.com/ghylpb/p/11552439.html
Copyright © 2020-2023  润新知