我正在编写一个帮助函数来展平列表,其中我只删除围绕整数的额外外部列表:
def rem_list(a):
if type(a) != list:
print a,"about to return"
return a
else:
rem_list(a[0])
a = []
lis2 = [2,4,[[2]],[[[1]]], 5, 6, [7]]
for each in lis2:
a.append(rem_list(each))
print a
我得到的输出如下:
2 about to return
4 about to return
2 about to return
1 about to return
5 about to return
6 about to return
7 about to return
[2, 4, None, None, 5, 6, None]
我不明白这一点。我在每次迭代中返回一个整数到rem_list()但是当字符周围存在外部列表时它返回None。我还包括一个print语句,它确切地检查我将要返回的内容并在打印中正确输出但仍然返回None。 Plz帮助。