这是我第一次用 Python 编写代码,需要一些帮助。我正在使用 Python 34,根本无法理解发生了什么。
def roll(v):
x = input()
return (x + v)
def startGame():
v = 0
while 0 <= v: # error points to this line
v = roll(v)
print("Thanks for playing")
我声明 v 是一个值为 0 的整数。但是当我尝试将它与另一个整数进行比较时,它给出了错误消息unorderable types: int() <= NoneType()
我可以使用一些指导..
谢谢
我将您发布的代码放入 python 3 shell 中,但在其他地方失败。你的 x = input() 生成一个字符串,并且 python 不知道如何将字符串转换为数字,除非你明确告诉它如何转换。
so:
def roll(v)
# Lets try to parse userinput
try:
x = int(input())
# sometimes users don't get it that "a" is no int
except ValueError:
x = 0
return (x+v)
or
def roll(v)
hasProducedNumber = False
x = 0
# we keep nagging for a number till no valueerror arises
while not hasProducedNumber:
try:
x = int(input())
hasProducedNumber = True
except ValueError:
print("Please provide a number")
return (x + v)
如果这不能解决您的问题,我需要实际产生错误的相关代码:)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)