pythonlist的交集
⑴ python array 兩個數組,求他們裡面元素的交集,並把這些交集的值求和
a = [2, 3, 4, 5, 6, 7, 8, 9]
b = [2, 4, 6, 7, 9, 0, 12, 11]
s = sum(set(a).intersection(set(b)))
print(s) # 28
⑵ python字典的並交集
沒看太懂,如果只是對key值求交集和並集,下面這個程序就好了,不是的話,說清楚
def union_intersection(d1,d2,mark):
"""
@attention: 這個是只對Key值做的
"""
temp = []
if mark == "union":
temp = list(set(d1.keys()+d2.keys()))
else:
temp = list(set(d1.keys())&set(d2.keys()))
tempdict = {}
for item in temp:
tempdict.setdefault(item,None)
return tempdict
if __name__ == '__main__':
d1 = {1:'a', 2:'b', 3:'c'}
d2 = {2:'2', 3:'3', 4:'4'}
print union_intersection( d1, d2, 'union' )
print union_intersection( d1, d2, 'intersection' )
⑶ python 檢測兩個列表是否有交集並返回
definter(a,b):
returnlist(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)
iflst3:
print(lst3)
else:
print("Empty")
⑷ python二維數組怎麼求交集
本文實例講述了python獲得兩個數組交集、並集、差集的房部分。分享給大家供大家參考。具體如下:
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 list 的交集,並集,差集了。
⑸ python 怎麼求兩個列表的交集
方法1
遍歷b1,如果某個元素同時也存在於b2中,則返回
復制代碼代碼如下:
b1=[1,2,3]
b2=[2,3,4]
b3 = [val for val in b1 if val in b2]
print b3
運行結內果如下
復制代碼代碼如下:
[2, 3]
方法容2
把列表轉換為集合,利用集合操作符求出交集,然後再轉換回列表類型
復制代碼代碼如下:
b1=[1,2,3]
b2=[2,3,4]
b3=list(set(b1) & set(b2))
print b3
運行結果如下
復制代碼代碼如下:
[2, 3]
方法3
前面的例子中兩個list都是簡單的單元素列表,還有一種比較特殊的情況,就是有嵌套類型的
復制代碼代碼如下:
b1=[1,2,3]
b2=[[2,4],[3,5]]
b3 = [filter(lambda x: x in b1,sublist) for sublist in b2]
print b3
運行結果如下
復制代碼代碼如下:
[2, 3]
⑹ 在python中如何將兩個list合並成一個list,不用for語句
1、運算符:
list1 = [1, 2, 3]
list2 = [4, 5, 6]
list3 = list1 + list2
print(list3)
2、extend()方法:
list1 = [1, 2, 3]
list2 = [4, 5, 6]
list3 = list1.extend(list2)
print(list3)
3、切片方式:
list1 = [1, 2, 3]
list2 = [4, 5, 6]
list1[len(list1):len(list1)] = list2
print(list1)
(6)pythonlist的交集擴展閱讀:
list的方法
L.append(var) #追加元素
L.insert(index,var)
L.pop(var) #返回最後一個元素,並從list中刪除之
L.remove(var) #刪除第一次出現的該元素
L.count(var) #該元素在列表中出現的個數
L.index(var) #該元素的位置,無則拋異常
L.extend(list) #追加list,即合並list到L上
L.sort() #排序
L.reverse() #倒序
list 操作符:,+,*,關鍵字del
a[1:] #片段操作符,用於子list的提取
[1,2]+[3,4] #為[1,2,3,4]。同extend()
[2]*4 #為[2,2,2,2]
del L[1] #刪除指定下標的元素
del L[1:3] #刪除指定下標范圍的元素
⑺ python循環處理list的交集。並集和不同。(用循環處理)
a1=[1,2,3,4,5,6,7,8,9]
b1=[2,5,3]
c1=[1,4,6,8]
temp1=[valforvalina1ifvalinb1]
printtemp1
temp=[valforvalina1ifvalnotinb1]#第一和第二比較的剩餘數據
temp2=[valforvalintempifvalinc1]
printtemp2
print[valforvalintempifvalnotinc1]#一、二比較的剩餘數據和第三比較剩餘的數據列印出來
一樓版少了權兩句 我只補充 請樓主點贊一樓的
⑻ python求列表交集的方法匯總
python求列表交集的方法匯總
本文實例匯總了python求列表交集的方法。分享給大家供大家參考。具體方法如下:
交集對於給定的兩個集合A 和 集合B 的交集是指含有所有既屬於 A 又屬於 B 的元素,而沒有其他元素的集合叫交集了,下面給出幾個python求列表交集例子供大家參考。
方法1
遍歷b1,如果某個元素同時也存在於b2中,則返回
代碼如下:b1=[1,2,3]
b2=[2,3,4]
b3 = [val for val in b1 if val in b2]
print b3
運行結果如下
代碼如下:[2, 3]
方法2
把列表轉換為集合,利用集合操作符求出交集,然後再轉換回列表類型
代碼如下:b1=[1,2,3]
b2=[2,3,4]
b3=list(set(b1) & set(b2))
print b3
運行結果如下
代碼如下:[2, 3]
方法3
前面的例子中兩個list都是簡單的單元素列表,還有一種比較特殊的情況,就是有嵌套類型的
代碼如下:b1=[1,2,3]
b2=[[2,4],[3,5]]
b3 = [filter(lambda x: x in b1,sublist) for sublist in b2]
print b3
運行結果如下
代碼如下:[2, 3]
希望本文所述對大家的Python程序設計有所幫助。
⑼ python如何求嵌套列表的交集
python中列表屬於有序序列,沒有求交集這個說法,只有python中的集合才有求交集的用法內
集合求交集法:a&b #a和b都是容集合
你可以通過set([……])將列表先轉化為集合,然後再用上面的做法求交集
⑽ python集合中的一個交集問題
s=[set([1,2]),set([2,3])]
prints[0]&s[1]
#輸出
set([2])