我想知道为什么这行不通?我是编程新手,正在学习 Python。
def convert(x,y):
while True:
try:
global x
x = int(input("Number: "))
except ValueError:
print("Make sure it is a number.")
while True:
try:
global y
y = int(input("Number: "))
except ValueError:
print("Make sure it is a number.")
convert(x,y)
请告诉我如何进行这项工作。
另外,我在运行时得到的错误是名称“x”是参数和全局。
好的,我修好了。这是正确的代码。
def convert():
while True:
try:
global number
number = int(input("Number: "))
break
except ValueError:
print("Make sure it is a number.")
while True:
try:
global number2
number2 = int(input("Number: "))
break
except ValueError:
print("Make sure it is a number.")
convert()
原文由 Suds2 发布,翻译遵循 CC BY-SA 4.0 许可协议
这是因为您试图覆盖参数
x
,但您不能。 这是一个相关的问题要解决此问题, 请不要 将变量命名为。你的代码几乎是:
顺便说一句,您的 while 循环将无限期地运行。在
x = int(input("Number: "))
之后,您可能想要添加一个break
。另一个循环也一样。