在将列表ot列表(嵌套列表)展平时,将空列表保留在同一索引中

时间:2018-10-26 20:18:44

标签: python python-3.x list

我有一个这样的列表列表,

sm = [['123'],['456'],['789'],[],['101']]

然后我整理列表,

sm_flattened = [val for sublist in sm for val in sublist]

现在,我明白了(sm_flattened

['123', '456', '789', '101']

但是,我需要这样的sm_flattened

['123', '456', '789', '', '101']

我怎么能得到这个?任何建议都很好!

1 个答案:

答案 0 :(得分:3)

为此,您需要在一个包含空字符串的子列表中转换空的子列表。

一种选择是:

sm_flattened = [val for sublist in sm for val in (sublist or [''])]

['']对于该迭代为空的情况下,它基本上使用sublist而不是sublist