3 回答
TA贡献1951条经验 获得超3个赞
这是因为您改变了区域设置变量。第一的价值永远不会改变。
请考虑以下示例
a = 5
def mut(arg):
arg = 6
mut(a)
print(a) // 5
这是因为 arg 是传入的参数的本地副本,它只存在于该函数作用域中。
这就是我们如何做到这一点,
a = 5
def mut(arg):
arg = 6
return arg
a = mut(a)
print(a) // 6
通过返回新的计算值并将其分配给我们的初始变量。
TA贡献1848条经验 获得超2个赞
您可以使用递归调用方法将其转换为 。Int
def try_ec(argument):
try:
return int(argument)
except:
inpt = input("Please enter a valid value: ")
try_ec(inpt)
a = []
score = 0
first = input("First Number: ")
first = try_ec(first)
second = input("Second Number: ")
second = try_ec(second)
TA贡献1780条经验 获得超5个赞
您必须使用 while 循环来检查该过程,直到它正确为止。
例如:
def take_int_input(text):
while True:
argument = input(text)
try:
return int(argument)
except:
print("Please enter a valid value!")
first = take_int_input("First Number: ")
second = take_int_input("Second Number: ")
添加回答
举报