认为list1 = [('WAIT=', '6'), ('WAIT=', '1'), ('WAIT=', '1')]
list2 = [12,2,2]请注意 list1 和 list2 将始终具有相同数量的元素,如何将 list1 中每个元组中的第二个元素替换为 list2 中的元素?那是:[('WAIT=', 12), ('WAIT=', 2), ('WAIT=', 2)]
3 回答
蛊毒传说
TA贡献1895条经验 获得超3个赞
使用带zip
内的列表理解,然后获取list1
列表每个值的第一个值作为第一个元素,每个list2
值作为第二个元素:
print([(x[0],y) for x,y in zip(list1,list2)])
输出:
[('WAIT=', 12), ('WAIT=', 2), ('WAIT=', 2)]
HUWWW
TA贡献1874条经验 获得超12个赞
另一种执行相同操作的方法如下(它将允许您拥有一个新列表,其中每个元组中的第一个项目的任何值WAIT=,WAIT1=等等):
list1 = [('WAIT=', '6'), ('WAIT=', '1'), ('WAIT=', '1')]
list2 = [12,2,2]
for i, n in enumerate(list2):
list1[i] = (list1[i][0], n)
print(list1)
# [('WAIT=', 12), ('WAIT=', 2), ('WAIT=', 2)]
aluckdog
TA贡献1847条经验 获得超7个赞
由于元组对象不支持项目分配,我想我们需要创建一个新的元组列表。您可以使用这一行来获得结果。
[(slice[0], replacement) for slice, replacement in zip(list1, list2)]
添加回答
举报
0/150
提交
取消