【python – 查找两个嵌套列表的交集?】教程文章相关的互联网学习教程文章

python两个 list 获取交集,并集,差集的方法

1. 获取两个list 的交集#方法一:a=[2,3,4,5]b=[2,5,8]tmp = [val for val in a if val in b] #列表推导式求的两个列表的交集print tmp#[2, 5]#方法二print list(set(a).intersection(set(b))) #列用集合的取交集方法2. 获取两个list 的并集print list(set(a).union(set(b)))3. 获取两个 list 的差集print list(set(b).difference(set(a))) # b中有而a中没有的 python的集合set和其他语言类似,是一个无序不重复元素集...

Python【Pandas】取交集、并集、差集【代码】

前堤条件:对于colums都相同的dataframe做过滤的时候 创建2个结构(列名)一致的DataFrame,df1和df2有1条重合的数据 import pandas as pddf1=pd.DataFrame([['a',10,'男'],['b',11,'女']],columns=['name','age','gender']) df2=pd.DataFrame([['a',10,'男']],columns=['name','age','gender']) df1 <style scoped="">.dataframe tbody tr th:only-of-type {vertical-align: middle;} .dataframe tbody tr th {vertical-align: top...

Python求多个list的交集、并集、差集 & list 排序

求多个list的交集、并集、差集 list1 = [1,2,3,4,12] list2 = [2,4,5,6,9,78] list3 = [2,3,4,5,8,12,78] 1)求多个list的交集: #list(set(list1).intersection(set(list2),set(list3),....))#如果有很多个,可以继续添加 res = list(set(list1).intersection(list2,list3,....))#如果有很多个,可以继续添加 结果应该是:res = [2,4] 2)求多个list的并集: #list(set(list1).union(set(list2),set(list3),....))#如果有很多...

Python 判断两个list列表是否有交集【代码】

Python 判断两个list列表是否有交集: 对两个list列表做set( )操作,然后 进行 & 操作def inter(a,b):return list(set(a)&set(b))lst1=[0,1,2,3,4,5,6,7,8,9] lst2=[-3,-2,-1,0,1] lst3=inter(lst1,lst2) if lst3:print(lst3) else:print("Empty")

python 集合运算交集&并集&差集

差集>>> #两个列表的差集3 >>> ret3 = list(set(a) ^ set(b))#两个列表的差集 >>> ret4=list(set(a).difference(set(b))) # b中有而a中没有的并集 获取两个list 的并集 >>> ret1=list(set(a).union(set(b))) >>> #获取两个list 的并集2 >>> ret2= list(set(a) | set(b))交集>>> #获取两个列表的交集2 >>> ret2= list(set(a) & set(b)) >>> ret2>>> #获取两个列表的交集3 >>> ret3= list(set(a).intersection(b)) >> #获取两个列表...

python集合set,交集,并集,差集,对称差集,子集和超集【代码】

python集合set,交集,并集,差集,对称差集,子集和超集x = {1, 2, 3, 4} y = {2, 4, 5, 6}# 交集(取x中与y中相同部分) print(x.intersection(y)) print(x & y)# 并集(去重合并) print(x.union(y)) print(x | y)# 差集(x在y中不同部分,相反) print(x.difference(y)) # {1, 3} print(y.difference(x)) # {5,6} print(x - y) print(y - x)# 补(对称差集) 两个分别差集之后合并为一个集合 print(x.symmetric_difference(y)) print(y...

多个字典和列表字典在Python中的高效快速数据存储和处理,以及两个列表字典的交集【代码】

我有一个形式的字典例:-all_ways = {key1:[list1], key2:[list2], ... keyN[listN]}我只想找到第ith个列表的那些元素,使其成为至少另一个列表(例如第j个列表,i!= j)的一部分,然后对于所有键,仅存储满足上述条件的那些元素. 除了使用多个循环外,还有什么好方法吗? 例:-key1: [1,2,3,4,5,100,111,123] key2: [1,2,3,13,15,17] key3:[100,110,111,1000] 回答:key1:[1,2,3,100,111] key2:[1,2,3] key3:[100,111]解决方法:您可以...

Python列表交集效率:generator还是filter()?【代码】

我想在Python(2.7)中交叉两个列表.我需要结果可迭代:list1 = [1,2,3,4] list2 = [3,4,5,6] result = (3,4) # any kind of iterable在交叉点之后首先提供完整的迭代,以下哪个更有效? 使用发电机:result = (x for x in list1 if x in list2)使用filter():result = filter(lambda x: x in list2, list1)其他建议? 提前致谢,阿姆农解决方法:这些都不是.最好的方法是使用集合.list1 = [1,2,3,4] list2 = [3,4,5,6] result = set(li...

python – 删除两个列表之间的交集【代码】

我有两个对象列表:m2m_links = mymodel._meta.many_to_many o2m_links = mymodel._meta.get_all_related_objects()o2m_links中有一个我希望省略/删除的对象.它可以通过以下方式识别:for r in m2m_links:if not r.rel.through._meta.auto_created:# Delete o2m_links object that has the same name as r.rel.through._meta.object_name如何删除与此循环命中的条件匹配的o2m_links对象?解决方法:您可以使用集合和列表推导来过滤列...

列表中的元组交集 – python【代码】

我有一个像这样的元组列表:all_tuples=[(92, 242),(355, 403),(355, 436),(355, 489),(403, 436),(436, 489),(515, 517),(517, 859),(634, 775),(701, 859),(775, 859)]我需要采取所有元组的交集并将它们联合起来.The desired result = [{92, 242},{355, 403,436,489},{515, 517,859,701,775,634}]那就是交叉的元组是迭代的联合. 我试图将元组转换为集合,然后采取交集,但没有工作.任何想法?解决方法:这是网络问题,使用networkxim...

python – 查找两个嵌套列表的交集?【代码】

我知道如何获得两个平面列表的交集:b1 = [1,2,3,4,5,9,11,15] b2 = [4,5,6,7,8] b3 = [val for val in b1 if val in b2]要么def intersect(a, b):return list(set(a) & set(b))print intersect(b1, b2)但是当我必须找到嵌套列表的交集时,我的问题就开始了:c1 = [1, 6, 7, 10, 13, 28, 32, 41, 58, 63] c2 = [[13, 17, 18, 21, 32], [7, 11, 13, 14, 28], [1, 5, 6, 8, 15, 16]]最后我想收到:c3 = [[13,32],[7,13,28],[1,6]]你能...

python – 列表与列表列表的第一个元素之间的交集【代码】

我有两个清单:wordlist = ['A', 'Aani', 'Aaron', 'Aaronic','Aaronical', 'Aaronite', 'Aaronitic','Aaru', 'Ab', 'Ababdeh']和wordlist_compound = [['A','0'], ['Aaronic','1'], ['Key','2'],['Aaronical','3'], ['Aaronite','4'], ['Yes','5']]我想取两个单词的交集,并在第三个列表中创建一个包含单词,数字组合编号的列表wordlist_final,以便wordlist_final看起来像:[['A','0'], ['Aaronic','1'], ['Aaronical','3'], ['Aar...

从python中的元组或集合列表中查找不相交集的集合【代码】

这是问题所在:我有一个元组列表(如果需要也可以设置).例如:a = [(1, 5), (4, 2), (4, 3), (5, 4), (6, 3), (7, 6)]我想找的是一个清单r = [(1, 5, 4, 2, 3, 6, 7)]因为一旦所有集合放在一起,交集不是空的. 例如a = [(1, 5), (4, 2), (4, 3), (5, 4), (6, 3), (7, 6), (8, 9)]结果应该是r = [(1, 5, 4, 2, 3, 6, 7), (8, 9)]希望问题很清楚.那么在python中最优雅的方法是什么呢? 干杯解决方法:这些是图表的连接组件,使用networkx...

python – 基于多列删除数据框架之间的交集【代码】

我有这两个数据帧:df_testdimension1_id dimension2_id dimension3_id dimension4_id dimension5_id 0 -1 -1 -1 -1 -1 1 1177314888 238198786 5770904146 133207291 Exact 2 1177314888 238198786 5770904266 18395155770 Exact 3 1177314888 238198786 5770904266 19338210057 Exact 4 ...

python – 任意维度的无限卷的交集【代码】

我需要代码/文本/谷歌关键字/其他资源来实现这个类.速度无关紧要.它应该适用于任何数量的维度.class InfiniteVolume: # such as a point, line, plane, volume, 4d-volumedef __init__(self, points): # two points for line, three points for plane, etc.self.points = pointsassert all(len(p)==len(points[0]) for p in points)def vdim(self): # Dimensions of the volume. For example 2.return len(self.points)-1def wdim(...