来与往的思索 发表于 2021-4-26 11:22:58

请问,我错在哪里?

import random
word=random.randint(1,10)
print("我们来玩个游戏吧!")
guess=input("猜猜我心中在想哪个数字,1到10之间哦^.^")
print(word)
while True:
    if guess==word:
      print("真聪明,猜对了!")
      break
    elif guess>word:
      print("大了,大了")
    elif guess<word:
      print("小了,小了")
    print("猜错了哦!再来一次")
    guess=input("猜猜我心中在想哪个数字,1到10之间哦^.^")
print("游戏结束,你真棒!")

hunterSG 发表于 2021-4-26 11:27:40

你想问什么?

来与往的思索 发表于 2021-4-26 11:30:25

就是我在运行的时候有错误,不知道是什么问题。

来与往的思索 发表于 2021-4-26 11:31:41

能运行,但运行后输入数值后就提示错误。

代码小白liu 发表于 2021-4-26 11:34:35

把你的错误发出来呀

来与往的思索 发表于 2021-4-26 11:41:09

TypeError: unorderable types: str() > int()

LuLD 发表于 2021-4-26 11:41:09

errorTypeError: '>' not supported between instances of 'str' and 'int'


guess=input("猜猜我心中在想哪个数字,1到10之间哦^.^")

input() 函数 默认输入的是 字符


类型转换一下
guess=int(input("猜猜我心中在想哪个数字,1到10之间哦^.^"))

来与往的思索 发表于 2021-4-26 12:20:52

谢谢,可以多运行了一步,但还是存在问题,问题显示如下。
Traceback (most recent call last):
    elif guess>word:
TypeError: unorderable types: str() > int()

来与往的思索 发表于 2021-4-26 12:24:05

是我漏了,问题解决了,谢谢。

肖-肖 发表于 2021-4-26 12:34:54

来与往的思索 发表于 2021-4-26 12:20
谢谢,可以多运行了一步,但还是存在问题,问题显示如下。
Traceback (most recent call last):
    elif ...

应该是循环有问题的
试下下面这个吧
import random
word=random.randint(1,10)
print("我们来玩个游戏吧!")
guess=int(input("猜猜我心中在想哪个数字,1到10之间哦^.^"))
print(word)
while True:
    if guess==word:
      print("真聪明,猜对了!")
      break
    elif guess>word:
      print("大了,大了")
      guess=int(input("猜猜我心中在想哪个数字,1到10之间哦^.^"))
    elif guess<word:
      print("小了,小了")
      guess=int(input("猜猜我心中在想哪个数字,1到10之间哦^.^"))
   
print("游戏结束,你真棒!")

来与往的思索 发表于 2021-4-26 13:14:57

好,谢谢!
页: [1]
查看完整版本: 请问,我错在哪里?