llliggg 发表于 2021-12-25 21:18:30

第五讲课后练习题修改游戏

因为之前我修改的代码跟小甲鱼的不一样,然后现在我想要代码识别输入文字类型并检测是数字或非数字然后接着循环跑,用s.isdigit(),但是我打出来的要么就是检测完之后重新打就没完没了,要么就是无法进行检测那部,看了答案我也没懂,s.isdigit()的用法,求大神帮我修改一下出现能够循环又能检测输入类型的{:10_266:}{:10_266:}{:10_266:}
import random

number = random.randint(1,10)
temp = input('猜数字:')

times = 1
guess = int(temp)
if guess > number:
    print ('大了')
else:
    print('小了')
while (guess != number) and (times < 3):
    temp = input('再猜一次:')
    guess = int(temp)
    times =times + 1
    if guess > number:
      print ('大了')
    if guess < number:
      print('小了')
if (guess == number) and (times <=3):
    print('猜中了')
else:
    print('三次都不中 游戏结束')

wopaoy 发表于 2021-12-25 22:10:59

if not temp.isdigit():
      temp = input('请输入数字:')
      guess = int(temp)

还有鱼油的代码很乱,建议看多几遍视频,了解缩进规则和while循环。

llliggg 发表于 2021-12-26 08:53:29

wopaoy 发表于 2021-12-25 22:10
if not temp.isdigit():
      temp = input('请输入数字:')
      guess = int(temp)


那个temp到底有什么意思呢

wopaoy 发表于 2021-12-26 11:11:58

llliggg 发表于 2021-12-26 08:53
那个temp到底有什么意思呢

你在代码里04.行已经定义了temp变量。temp就是一个变量而已。
你也可以用其他变量来取代temp。例如:a,b,c,d。
但通常为了能让别人看懂代码,都采用英文来定义变量。{:10_256:}

hornwong 发表于 2021-12-26 22:52:10

{:5_95:}
页: [1]
查看完整版本: 第五讲课后练习题修改游戏