前言:我意识到这只是我痴迷于制造更加pythonic的东西。Python - 替换嵌套列表中的特定元素理解
我有一个列表的列表像这样:
L = [[1,'',3,''],[1,2,'',4],[1,2,3,''],['',2,3,4]]
我需要数字4只更换第4个元素,如果它是“”。
这可以用一个简单的for循环来实现:
for row in L:
if row[3] =='':
row[3] = 4
我如何通过嵌套列表理解实现这一目标?
我最好的尝试是以下几点,但是它会产生一个列表,其中所有值都用'4'取代,而不是特定的元素。
L = [[4 if x=='' else x for x in y] for y in L]
这也将取代0 –
@Błotosmętek - 好点的,固定的。 – zwer
@zwer这正是我所期待的。谢谢!!! – ThousandFacedHero