2

我是 python 的新手,我有一个奇怪的列表列表(用于科学实验),如下所示:

aaa=[['2.2', '2.05', '', '2.2', '2', '', '2.2', '2', '2.1', '2.05', '2', '2', '', '', '2.15', '2', '2.05', '2.1', '', '', '', '', ''], ['2.2', '2.05', '', '2.2', '2', '', '2.2', '2', '2.1', '2.05', '2', '2', '', '', '2.15', '2', '2.05', '2.1', '', '', '', '', ''], ['2.2', '2.05', '', '2.2', '2', '', '2.2', '2', '2.1', '2.05', '2', '2', '', '', '2.15', '2', '2.05', '2.1', '', '', '', '', ''], ['3.3', '3.4', '', '3.25', '3.25', '', '3.5', '3.5', '3.4', '3.6', '3.5', '3.3', '', '', '3.2', '3.3', '3.4', '3.3', '', '', '', '', '']]

如您所见,其中一些列表包含空元素 ''。我想将上述列表(可能大小> 1000)中的空元素替换为“0.00”,我想知道实现这一目标的最pythonic(一个衬里会很棒)是什么。

显然,我可以使用 say i,j 遍历列表——但我确信 python 有一些 itertools 等方法,这些方法可能非常快。

4

1 回答 1

10

使用列表推导:

new_list = [[element or '0.00' for element in sublist] for sublist in big_list]
于 2013-03-10T23:06:04.843 回答