abc200603 发表于 2021-11-14 23:46:45

关于python第四讲课后练习题,猜数字

import random
times = 3
secret = random.randint(1,10)
print('我爱鱼C')
guess = 0
print('猜数字')
while (guess != secret) and (times > 0):
      temp = input()
      guess = int(temp)
      times = times - 1
      if guess == secret:
          print('你是蛔虫吗')
      else:
          if guess > secret:
            print('大了')
          else:
            print('小了')
          if times > 0:
             print('再试一次')
          else:
            print('机会用光')
print('游戏结束')


如果把第八行temp = input()放到前一列,如下。   为什么他就运行一次就结束呢,而不是三次呢? 谢谢

mport random
times = 3
secret = random.randint(1,10)
print('我爱鱼C')
guess = 0
print('猜数字')
temp = input()
while (guess != secret) and (times > 0):
      guess = int(temp)
      times = times - 1
      if guess == secret:
          print('你是蛔虫吗')
      else:
          if guess > secret:
            print('大了')
          else:
            print('小了')
          if times > 0:
             print('再试一次')
          else:
            print('机会用光')
print('游戏结束')

jackz007 发表于 2021-11-14 23:56:53

本帖最后由 jackz007 于 2021-11-15 10:36 编辑

      不可以,把 input() 从循环体中移出,那么,在循环过程中,就无法获取新的 guess ,循环 3 次也就失去意义了。
页: [1]
查看完整版本: 关于python第四讲课后练习题,猜数字