这就是问题所在:给定以下Python程序,假设用户从键盘输入数字4。返回值是什么?
N = int(input("enter a positive integer:"))
counter = 1
while (N > 0):
counter = counter * N
N = N - 1
return counter
然而,当我运行系统时,我仍然得到一个外部函数错误,我做错了什么?谢谢!
发布于 2013-02-18 03:01:31
您只能从函数内部返回,而不能从循环返回。
看起来您的返回应该在while循环之外,并且您的完整代码应该在一个函数中。
def func():
N = int(input("enter a positive integer:"))
counter = 1
while (N > 0):
counter = counter * N
N -= 1
return counter # de-indent this 4 spaces to the left.
print func()
如果这些代码不在函数中,那么您根本不需要return
。只需在while loop
外部打印counter
的值。
发布于 2013-02-18 02:59:54
您有一个不在函数中的return
语句。函数由def
关键字启动:
def function(argument):
return "something"
print function("foo") #prints "something"
return
在函数之外没有任何意义,因此python会抛出一个错误。
发布于 2018-07-29 06:08:20
您没有在任何函数中编写代码,您只能从函数返回。删除return语句,只打印您想要的值。
https://stackoverflow.com/questions/14924820
复制相似问题