【发布时间】:2016-05-16 15:50:47
【问题描述】:
我想用list2 元素替换那些索引存储在列表indices 中的list1 元素。以下是当前代码:
j=0
for idx in indices:
list1[idx] = list2[j]
j+=1
是否可以使用 lambda function 或 list comprehension 为上述四行编写单行代码?
编辑list1包含浮点值list2包含浮点值indices包含0和len(list1)之间的整数
【问题讨论】:
-
不,列表推导不能修改现有列表。
-
您能举例说明
list1、list2和incides将包含哪些内容吗? -
@MorganThrapp 创建新列表的选项是open!
-
@MorganThrapp 这是不好的做法,但他们可以:
x = [0, 0, 0]; [x.__setitem__(i, 5) for i in range(3)]; print(x)会打印[5, 5, 5]。 -
@OrangeFlash81 我的意思是,是的,你可以这样做。如果你在生产代码中这样做,我会伤害你。
标签: python