gpt4 book ai didi

Python如何在列表中进行搜索

转载 作者:行者123 更新时间:2023-12-01 06:11:32 25 4
gpt4 key购买 nike

我有两个列表:

a= [['tea','apple',1,1],['coffee','apple',0,1],['cola','mango',1,1],['lemon','banana',0,0]]
b=[[ 'apple','0','1','1','3'],[ 'ring','0','1','1','3'],[ 'tennis','1','0','0','3'],[ 'mango','0','1','0','3']]

我正在尝试找出最好的方法:

  1. 列出项目
  2. 查找/搜索列表 a 中 a 和 b 之间的公共(public)元素(即列表 a 中的苹果和芒果)。
  3. 对于条目数,例如苹果在列表a中,我想添加整个[ 'apple','0','1','1','3'] 到列表 b。如果列表 a 中有 2 个苹果条目,那么我想在 b 中添加两个 ['apple',...] block 。列表应类似于 :b=[[ 'apple ','0','1','1','3'],['苹果','0','1','1','3'],['芒果','0', '1','0','3']]

有没有更简单的方法来做到这一点?

最佳答案

对于 1,最好是使用 set():

a= [['tea','apple',1,1],
['coffee','apple',0,1],
['cola','mango',1,1],
['lemon','banana',0,0]]
b=[[ 'apple','0','1','1','3'],
[ 'ring','0','1','1','3'],
[ 'tennis','1','0','0','3'],
[ 'mango','0','1','0','3']]

a_columns = zip(*a)
# union
a_set = set(a_columns[0]) | set(a_columns[1])
b_columns = zip(*b)
b_set = set(b_columns[0])
# intersection
common_names = a_set & b_set
print common_names

关于Python如何在列表中进行搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5678927/

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