鱼C论坛

 找回密码
 立即注册
查看: 1506|回复: 8

[已解决]大佬们帮我看下我这个python程序,能简洁些吗?总感觉不好!也不知道哪里不好!!!

[复制链接]
发表于 2019-9-30 10:28:54 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
'''
猜数字游戏
有三次机会
'''
import random
chance = 3
guess = random.randint(1,15)

while chance >0:
        answer = int(input('请输入你要猜的数字:'))
        if guess == answer:
                print('你真牛逼')
       
        elif guess >answer:
                print('大了')
                chance-=1
                print('你还有'+str(chance)+'次机会')
               
        else:
                print('小了')
                chance-=1
                print('你还有'+str(chance)+'次机会')
               
print('游戏结束')



最佳答案
2019-9-30 17:46:10
帮你改了一下:
  1. '''
  2. 猜数字游戏
  3. 有三次机会
  4. '''
  5. import random
  6. chance = 3
  7. guess = random.randint(1, 15)

  8. while chance > 0:
  9.         answer = int(input('请输入你要猜的数字:'))
  10.         if guess == answer:
  11.                 print('你真牛逼')
  12.                 break
  13.         
  14.         elif guess > answer:
  15.                 print('大了')
  16.                 chance -= 1
  17.                 print('你还有', chance, '次机会')
  18.                
  19.         else:
  20.                 print('小了')
  21.                 chance -= 1
  22.                 print('你还有', chance, '次机会')
  23. else:
  24.         print('机会用光了!')
  25.                
  26. print('游戏结束')
复制代码

最后还打印个零次,这个怎么取消呢?

最后还打印个零次,这个怎么取消呢?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2019-9-30 10:29:42 | 显示全部楼层
人工顶帖
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-9-30 17:46:10 | 显示全部楼层    本楼为最佳答案   
帮你改了一下:
  1. '''
  2. 猜数字游戏
  3. 有三次机会
  4. '''
  5. import random
  6. chance = 3
  7. guess = random.randint(1, 15)

  8. while chance > 0:
  9.         answer = int(input('请输入你要猜的数字:'))
  10.         if guess == answer:
  11.                 print('你真牛逼')
  12.                 break
  13.         
  14.         elif guess > answer:
  15.                 print('大了')
  16.                 chance -= 1
  17.                 print('你还有', chance, '次机会')
  18.                
  19.         else:
  20.                 print('小了')
  21.                 chance -= 1
  22.                 print('你还有', chance, '次机会')
  23. else:
  24.         print('机会用光了!')
  25.                
  26. print('游戏结束')
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-10-8 10:27:34 | 显示全部楼层
zltzlt 发表于 2019-9-30 17:46
帮你改了一下:

谢谢大佬,感谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-10-8 10:51:25 | 显示全部楼层
本帖最后由 kaohsing 于 2019-10-8 10:53 编辑

        elif guess > answer:   换成        elif answer >guess :
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-10-8 15:16:04 | 显示全部楼层
给你加了 如果是第一次猜中了,跳出
和 当chance为0时直接跳出
还可以考虑一下如果输入不是数字,程序会如何
  1. '''{:10_257:}
  2. 猜数字游戏
  3. 有三次机会
  4. '''
  5. import random

  6. chance = 3
  7. guess = random.randint(1, 15)


  8. while chance > 0:
  9.     answer = int(input('请输入你要猜的数字:'))

  10.     if guess == answer:
  11.         print('你真牛逼')
  12.         break

  13.     else:
  14.         if guess < answer:
  15.             print('大了')

  16.         else:
  17.             print('小了')

  18.         chance -= 1
  19.         if chance == 0:
  20.             break
  21.         print('你还有' + str(chance) + '次机会')

  22. print('游戏结束'+'\n'+'答案是:'+str(guess))
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-10-8 15:26:34 | 显示全部楼层
Leify 发表于 2019-10-8 15:16
给你加了 如果是第一次猜中了,跳出
和 当chance为0时直接跳出
还可以考虑一下如果输入不是数字,程序会 ...

有bug 不是数字就报错
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-10-8 15:29:25 | 显示全部楼层
是不是要加个 if not answer.isdigit:
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-10-8 16:29:24 | 显示全部楼层
八风不动 发表于 2019-10-8 15:26
有bug 不是数字就报错

所以你可以在获取数据的时候判断,如果不是数字,重新输入
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-1 09:28

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表