gpt4 book ai didi

python - * : 'NoneType' and 'NoneType' (Python) 不支持的操作数类型

转载 作者:太空宇宙 更新时间:2023-11-04 01:24:43 26 4
gpt4 key购买 nike

我目前正在尝试定义函数,但遇到了这个错误。我只是想做一个简单的函数,用户输入 2 个数字,然后将它们相乘。也请尽可能简单地解释我做错了什么。 (我是菜鸟)

def userinput():
while True:
try:
number = int(input("Number: "))
break
except ValueError:
print("NOPE...")

def multiply(x,y):
z = x * y
print(z)

while True:
x = userinput()
y = userinput()
multiply(x,y)
again = input("Again? ")
if again == "No" or again == "no":
break
else:
pass

最佳答案

在你的函数 userinput() 中,你永远不会返回 number,所以 python 默认为 return None。因此,当您将 xy 传递给 multiply() 时,您正在尝试执行 None * None,因此错误。

userinput()

中的 try/except 结构之后

return number


如果你还想检查 float ,你可以这样做:

while True:
number = input("Number: ")
try:
return int(number)
except ValueError:
try:
return float(number)
except ValueError:
print("NOPE...")

关于python - * : 'NoneType' and 'NoneType' (Python) 不支持的操作数类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18809856/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com