这个函数返回Nonetype而不是list,我不知道为什么。我如何让这个东西返回一个列表?代码如下:
def fib_less_than(N):
fibonacci_numbers = [1,1]
fibonacci_n = fibonacci_numbers[-1] + fibonacci_numbers[-2]
while fibonacci_n < N in range(2,N+5):
fibonacci_n = fibonacci_numbers[-1] + fibonacci_numbers[-2]
fibonacci_numbers.append(fibonacci_n)
print(fibonacci_numbers[0:len(fibonacci_numbers)-1])
fib_less_than(10)
发布于 2018-09-24 07:46:34
这是因为您不会返回任何内容。所以,你必须返回Fib。列表,并在函数外部执行打印:
def fib_less_than(N):
fibonacci_numbers = [1,1]
fibonacci_n = fibonacci_numbers[-1] + fibonacci_numbers[-2]
while fibonacci_n < N in range(2,N+5):
fibonacci_n = fibonacci_numbers[-1] + fibonacci_numbers[-2]
fibonacci_numbers.append(fibonacci_n)
return (fibonacci_numbers[0:len(fibonacci_numbers)-1])
print (fib_less_than(10))
发布于 2018-09-24 07:50:56
在Python语言中,print
返回一个None
(它只在控制台中显示内容)。您需要在函数的末尾执行return
。
https://stackoverflow.com/questions/52471216
复制相似问题