gpt4 book ai didi

python - 用另一个列表中的值替换列表中的特定值

转载 作者:太空宇宙 更新时间:2023-11-03 13:06:45 26 4
gpt4 key购买 nike

我的 python 代码中有两个列表: list_1 = [1, '是', 3, '否', 5, '是', 7] 和 list_2 = ['a', 'b', 'c']

我想将 list_2 的值插入到 list_1 的"is"或“否”位置。

我试过类似的方法,通过获取 list_1 的索引值并尝试插入 list_2,但没有成功。

list_1 = [1, 'Yes', 3, 'No', 5, 'yes', 7]
list_2 = ['a', 'b', 'c']

for (each, i) in zip(list_2, range(len(list_1))):
if list_1 == 'yes' or list_1 == 'no':
list_1.insert(i, each)

for each in list_1:
print(each)

我只得到 list_1 的输出,我想要这样的最终列表 f_list=[1, 'a', 3, 'b', 5, 'c', 7]我怎样才能做到这一点?

最佳答案

在您当前的方法中,您在条件 if list_1 == 'yes' or list_1 == 'no 中将列表与 yesno 进行比较': 这是行不通的,因此永远不会满足 if 条件并且 list_1 保持原样

使用 for 循环的一种简单方法是在 list_1 中查找 yesno,一旦找到,将其替换为一个元素list_2,并递增计数器以转到 list_2

的下一个元素
list_1 = [1, 'Yes', 3, 'No', 5, 'yes', 7]
list_2 = ['a', 'b', 'c']

#variable to keep track of elements of list_2
index = 0

#Iterate through indexes and item of list_1 using enumerate
for idx, item in enumerate(list_1):

#If an item in list_1 matches yes or no
if str(item).lower() in ['yes', 'no']:

#Replace that item with item in list_2
list_1[idx] = list_2[index]

#Move to next item in list_2
index+=1

print(list_1)

输出将是

[1, 'a', 3, 'b', 5, 'c', 7]

关于python - 用另一个列表中的值替换列表中的特定值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56705625/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com