【发布时间】:2013-11-30 21:02:39
【问题描述】:
我需要打印list的元素,如果一个元素大于等于100,后面跟一个换行符,如果不是,后面跟一个空格。
这是我目前所拥有的:
def function(list):
if list == []:
return None
elif list[0] >= 100:
print(list[0], function(list[1:]), end = '\n')
else:
print(list[0], function(list[1:]), end = '')
return None
但是当我尝试 list = [2,3,103, 8, 10] 时, Python 打印:
10 无8 无103 无
3 无 2 无
有什么建议/帮助吗?
【问题讨论】:
-
问题是你也在打印函数调用的返回。将递归调用放在打印语句之外。
标签: python list recursion printing