【发布时间】:2015-01-14 16:37:37
【问题描述】:
我试图理解递归函数,为了做到这一点,我觉得我需要为自己创建一个更小的示例。但是,我自己的代码向我抛出了 NoneType 错误。我的函数并没有真正的目的,我只是想知道为什么会发生错误?
def recursive(seq):
if not seq:
return [seq]
else:
seq2=seq[1:]
print('seq2= ',seq2)
print('Type seq2 = ',type(seq2))
for i in recursive(seq2):
print('hi')
输入:
recursive('123')
输出:
seq2= 23
Type seq2 = <class 'str'>
seq2= 3
Type seq2 = <class 'str'>
seq2=
Type seq2 = <class 'str'>
hi
Traceback (most recent call last):
File "<pyshell#12>", line 1, in <module>
recursive('123')
File "C:/Python34/myreqursive(del).py", line 8, in recursive
for i in recursive(seq2):
File "C:/Python34/myreqursive(del).py", line 8, in recursive
for i in recursive(seq2):
TypeError: 'NoneType' object is not iterable
【问题讨论】:
标签: python python-3.x recursion nonetype