好的那是你的宝贝 2023-12-01 14:21 采纳率: 100%
浏览 30
已结题

猜数字赢金币python

img


如果可以请尽量用最基础的python回答,才开始学习python没多久

  • 写回答

2条回答 默认 最新

  • 梦幻精灵_cq 2023-12-02 02:10
    关注
    • 菜单模块menu

      img

    python代码

    
    #4、退出功能:提供界面,退出游戏。
    def menu():
        ''' 菜单显示 '''
        print(f"\033[2J\n{' 猜数赢金币 ':=^35}\n\n") # Linux式清屏。
        
        for k,i in enumerate(['登 录', '充 值', '开 始']):
            print(f"{f'{k+1}.  {i}':^38}\n")
        
        print(f"{'0.  退 出':^38}\n")
        return input(f"\n{'':.^40}\n{'(请输入对应编号)':^33}\n{'':~^40}\n\n{'':>8}菜单选择:_").strip()
    
    

    • 登录模块login

      img


      img

    python代码

    
    #1、登录功能:用户名username和密码pasword与系统提供的用户名sys_username、 密码sys_password验证登录,登录错误时重新输入登录,重复登录的次数不能超于3次;
    
    def login():
        ''' 登录 '''
        sys_usrname = '梦幻精灵_cq'
        sys_password = 'DreamElf_cq'
        
        for i in '123':
            username = input('\n用户名:').strip()
            password = input('登录密码:').strip()
            if username == sys_usrname and sys_password == password:
                input(f"\n{' 登录成功!':~^35}\n\n{'(任意键开始游戏)':^33}")
                return True
            else:
                if username != sys_usrname:
                     input(f"\n{' 用户名错误!':~^34}\n")
                     continue 
                else:
                    input(f"\n{' 密码错误!':~^35}\n")
                    continue 
    
            input(f"\n{' 登录成功!':~^35}\n\n{'(任意键开始游戏)':^33}")
        
        print(f"\n{' 3次机会已用完!':~^35}\n\n{'(您已退出程序)':^33}")
    
    

    • 2、充值模块

      img

    python代码

    
    #2、充值功能:登录成功后,顺利进入游戏并进行金币充值gold_ money,充值金额范围为1-100,若超过此范围,则提示“充入金额为1-100,请重新充值”,重新充值;重复充值次数不超过5次;
    def recharge(gold_money):
        ''' 充值模块 '''
        for i in range(5):
            gold = int(input(f"\n{f' 当前金币数:{gold_money} ':^34}\n\n{' 金币充值 ':~^36}\n\n{'':>12}输入:"))
            
            if not 1 <= gold <= 100:
                print(f"\n{'(充入金额为1~100,请重新充值)':^29}\n")
                continue 
            
            gold_money += gold
            
            if not input(f"\n{'':>4}继续充值?(y or Y) _").strip() in list('yY') :
                    break 
    
        print(f"\n{f' 当前金币数:{gold_money} ':~^34}\n")
        
        if i == 5:
            print(f"\n{'(重复充值超过5次,程序已退出)':^27}\n")
        else:
            print(f"\n{'(重复充值完成,程序已退出)':^27}\n")
        
        return gold_money
    
    

    • 3、游戏模块

      img

    python代码

    
    #3、游戏功能:进入猜数字赢金币环节,系统将随机产生-个100内的数字maigc,并与玩家猜的数据guess进行比较,若猜错,则继续猜且扣除1个金币,直至猜对或剩余金币为0为止,猜对奖励10个金币。
    def decide(maigc, guess):
        ''' 评判 '''
    
        if maigc == guess:
            return f"\n{' 您真棒!':~^36}\n\n{'(增加10枚金币!)':^35}\n\n{f'当前金币数:{gold_money}':^34}\n"
        else:
            tic = '您猜大了' if guess > maigc else '您猜小了'
            return f"\n{f' {tic}!':~^35}\n\n{'(扣除1枚金币!)':^35}\n\n{f'当前金币数:{gold_money}':^34}\n{'':~^40}"
    
    
    def playGame():
        ''' 游戏 '''
    
        if not gold_money:
            input(f"\n{f'当前金币数:{gold_money}':^34}\n\n{' 请先充值再来游戏 ':~^32}\n\n{'(任意键返回)':^35}")
            return 
    
        from random import randint # 加载随机整数选择方法。
        maigc = randint(0, 99) # 产生一个100以内的随机整数。
        
        while gold_money:
            guess = int(input(f"\n{'':>12}猜数:_"))
            print(decide(maigc, guess))
    
    

    展开全部

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
    梦幻精灵_cq 2023-12-02 13:53

    代码有些不bug,需要调整修正😂

    回复
    梦幻精灵_cq 回复 梦幻精灵_cq 2023-12-03 16:28

    本回答代码已最大化凝炼,已整理成学习笔记,您可以点击蓝色文字跳转翻阅。

    回复
查看更多回答(1条)
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 12月9日
  • 已采纳回答 12月2日
  • 创建了问题 12月1日
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部