这是一个非常基本的问题
我想用另一个列表替换列表中的元素。
这是我的代码:
listb = ['1','2','3','4']
lista = ['a','b','c','d']
print listb
print "\n\n"
listb = listb.replace(listb[0],lista[0])
print listb
这是错误的。我怎样才能正确地做到这一点......?
答案 0 :(得分:2)
您的第listb = listb.replace(listb[0],lista[0])
行有误,因为replace
不是list
的函数
您需要改为
listb = [i for i in lista]
这会将listb
的每个值替换为lista
的值。
如果要替换单个值,则需要执行
listb[0] = lista[0]
注意 -
您也可以复制整个列表
import copy
listb = copy.deepcopy(lista)
答案 1 :(得分:1)
如果您想将listb
中的一个元素替换为lista
中的元素,那么
listb[0] = lista[0]
应该带你去那里。
如果您要将listb
中的每个元素替换为lista
中具有相同索引的元素,而不创建新列表,那么
for index, value in enumerate(listb):
list[index] = lista[index]
是你想要的。
如果您只想让listb
成为lista
的副本,那么
import copy
listb = copy.deepcopy(lista)
就是答案。