好的,所以你可以用这种方式用简单的数字值改变列表中的元素:
>>> a=[1,2,3,4,5,1,2,3,4,5,1]
>>> for n,i in enumerate(a):
... if i==1:
... a[n]=10
...
>>> a
[10, 2, 3, 4, 5, 10, 2, 3, 4, 5, 10]
和列表理解:
>>> a=[1,2,3,1,3,2,1,1]
>>> a = [4 if x==1 else x for x in a]
>>> a
[4, 2, 3, 4, 3, 2, 4, 4]
但是如果我有一个字典列表,我是否可以使用列表理解来改变一个元素而不是其中一个属性?那有什么表达吗?
答案 0 :(得分:1)
这就是你要找的东西:
a = [{1: [1,2,3], 2: [3,4,5]}]
a = [{k: [1,1,1]} if k == 2 else {k: v} for x in a for k, v in x.items()]