【发布时间】:2013-06-24 16:54:24
【问题描述】:
我正在尝试在 python 中使用列表理解来展平列表。我的清单有点像
[[1, 2, 3], [4, 5, 6], 7, 8]
仅用于打印此列表中的单个项目,我编写了此代码
def flat(listoflist):
for item in listoflist:
if type(item) != list:
print item
else:
for num in item:
print num
>>> flat(list1)
1
2
3
4
5
6
7
8
然后我使用相同的逻辑通过列表理解来展平我的列表我收到以下错误
list2 = [item if type(item) != list else num for num in item for item in list1]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'int' object is not iterable
如何使用列表理解来展平这种类型的列表列表?
【问题讨论】:
标签: python list python-2.7 list-comprehension