【发布时间】:2018-06-11 20:33:50
【问题描述】:
我需要定义一个函数,它将从用户输入中收集的两个整数相乘。说明说要“在函数内”收集用户输入,但这样做会导致错误:
NameError: name 'num_1' is not defined.
这是我的尝试:
def multiply(num_1, num_2):
num_1 = input("enter a whole number:")
num_2 = input("enter another whole number:")
result = int(num_1)*int(num_2)
return(num_1 + " * " + num_2 + " = " + str(result))
multiply(num_1, num_2)
更改代码以便在调用函数时收集输入使其通过:
def multiply(num_1, num_2):
result = int(num_1)*int(num_2)
return(num_1 + " * " + num_2 + " = " + str(result))
print(multiply(input("enter a whole number: "), input("enter another whole number: ")))
但我想知道是否可以按照说明在函数中收集输入。
【问题讨论】:
-
当然,只需删除函数参数。您的函数不接受参数,因为它接受来自
input()调用的值而不是。 -
所以
def multiply():,然后拨打multiply()。 -
我希望那些对答案投反对票的人会让 cmets 说出原因。
-
@Chandra 看到我的回答
标签: python python-3.x nameerror