Kevin520Alex 发表于 2018-8-7 10:50:34

求助!程序中随机函数中的数字取的是1到10,运行程序后结果与众不同

本帖最后由 Kevin520Alex 于 2018-8-7 10:53 编辑

以下为程序:
import random
secret = random.randint(1,10)
temp = input('不妨猜一下小甲鱼在想1到10之间的哪个数字呢:')
guess = int(temp)
while guess != secret:
    temp = input('重新猜一下吧')
    guess = int(temp)
    if guess == secret:
      print('恭喜你,回答正确!')
    else:
      if guess >8:
            print('大了大了')
      else:
            print('小了小了')
print('不玩了')


运行后出现的情况:
不妨猜一下小甲鱼在想1到10之间的哪个数字呢:7
重新猜一下吧8
小了小了
重新猜一下吧9
大了大了
重新猜一下吧8
小了小了
重新猜一下吧9
大了大了
重新猜一下吧7
小了小了
重新猜一下吧8
小了小了
重新猜一下吧9
大了大了
重新猜一下吧8.5
Traceback (most recent call last):
File "E:/李老师的工作和学习/Python3.7/每课学习/第五课条件分支语法.py", line 7, in <module>
    guess = int(temp)
ValueError: invalid literal for int() with base 10: '8.5'

因为设定的随机函数数字为1到10 范围内的整数,发现猜8小了,猜9大了,非常奇怪。而且程序和小甲鱼老师的程序完全一致
本人新手,求助!求助!求助!!!

无符号整形 发表于 2018-8-7 11:05:36

if guess >8:
            print('大了大了')
      else:
            print('小了小了')
这里把用户的输入和8判断干什么?

Kevin520Alex 发表于 2018-8-7 11:08:31

无符号整形 发表于 2018-8-7 11:05
这里把用户的输入和8判断干什么?

没有好好检查,惭愧惭愧{:5_100:}
页: [1]
查看完整版本: 求助!程序中随机函数中的数字取的是1到10,运行程序后结果与众不同