gpt4 book ai didi

python:如果存在于另一个列表中,则比较列表中的值

转载 作者:太空宇宙 更新时间:2023-11-04 11:08:52 27 4
gpt4 key购买 nike

所以现在我有 2 个列表,

list1 = [[0,1],[0,2],[0,10]]
list2 = [[1, ['miniwok', 'food1']], [2,['chicken', 'food2']], [3,['duck', 'food3']], ..... , [10, ['pizza', 'food10']]]

我想比较 list1 中的所有第二个元素,如果它存在于 list2 中,则打印相应的列表。所以我想要的结果是这样的:

[[1, 'miniwok'],[2, 'chicken'],[10,'pizza']]

我尝试使用嵌套 for 循环,但我认为我做错了什么

for x in range(len(list1)):
for y in range(1, len(list2)+1):
if(list1[x][1] == list2[y]):
result = [y, list2[y][0]]
fstore.append(result)

最佳答案

您可以将 list2 转换为字典以便更快地查找:

list1 = [[0,1],[0,2],[0,10]]
list2 = [[1, ['miniwok', 'food1']], [2,['chicken', 'food2']], [3,['duck', 'food3']], [10, ['pizza', 'food10']]]
new_l2 = dict(list2)
result = [[b, k[a]] for a, b in list1 if (k := new_l2.get(b)) is not None]

输出:

[[1, 'miniwok'], [2, 'chicken'], [10, 'pizza']]

关于python:如果存在于另一个列表中,则比较列表中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58785567/

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