python學習之集合
阿新 • • 發佈:2018-11-18
集合(set)是一個無序的不重複元素序列。
可以使用大括號 { } 或者 set() 函式建立集合,注意:建立一個空集合必須用 set() 而不是 { },因為 { } 是用來建立一個空字典。
建立格式:
parame = {value01,value02,...} 或者 set(value)
1、add(增加元素)
name = set(['Tom','Lucy','Ben']) name.add('Juny') print(name) #輸出:{'Lucy', 'Juny', 'Ben', 'Tom'}
2、clear(清空所有元素)
name = set(['Tom','Lucy','Ben']) name.clear() print(name) #輸出:set()
3、copy(拷貝set集合)
name = set(['Tom','Lucy','Ben']) new_name = name.copy() print(new_name) #輸出:{'Tom', 'Lucy', 'Ben'}
4、difference(返回兩個或多個集合中不同的元素,並生成新的集合)
A = set([2,3,4,5]) B = set([3,4]) C = set([2]) n = A.difference(B,C) print(n) #輸出:{5} #返回A集合裡面,在B和C集合中沒有的元素,並生成新的集合
5、difference_update(刪除A集合裡面,在B集合中存在的元素。)
A = set([2,3,4,5]) B = set([4,5]) A.difference_update(B) print(A) #輸出:{2, 3}
6、discard(移除元素,如果元素不存在不報錯)
n = set([2,3,4]) n.discard(3) print(n) #輸出:{2, 4}
7、intersection(取交集,並生成新的集合)
n1 = set([2,3,4,5]) n2 = set([4,5,6,7]) n = n1.intersection(n2) print(n) #輸出:{4, 5}
8、intersection_update(取交集,修改原來的集合)
n1 = set([2,3,4,5]) n2 = set([4,5,6,7]) n1.intersection_update(n2) print(n1) #輸出:{4, 5}
9、isdisjoint(判斷交集,是返回False,否返回True)
n1 = set([2,3,4,5]) n2 = set([4,5,6,7]) print(n1.isdisjoint(n2)) #輸出:False
10、issubset(判斷子集)
A = set([2,3]) B = set([2,3,4,5]) print(A.issubset(B)) #輸出:True #A是B的子集
11、issuperset(判斷父集)
A = set([2,3]) B = set([2,3,4,5]) print(B.issuperset(A)) # 輸出:True #B是A的父集
12、pop(隨機移除一個元素)
n = set([2,3,4,5]) n1 = n.pop() print(n,n1) # 輸出:{3, 4, 5} 2
13、remove(移除指定元素,元素不存在會報錯)
n = set([2,3,4,5]) n.remove(2) print(n) # 輸出:{3, 4, 5}
14、symmetric_difference(取交集,並生成新的集合)
A = set([2,3,4,5]) B = set([4,5,6,7]) print(A.symmetric_difference(B)) # 輸出:{2, 3, 6, 7}
15、symmetric_difference_update(取交集,改變原來的集合)
A = set([2,3,4,5]) B = set([4,5,6,7]) A.symmetric_difference_update(B) print(A) # 輸出:{2, 3, 6, 7}
16、union(取並集,並生成新的集合)
A = set([2,3,4,5]) B = set([4,5,6,7]) print(A.union(B)) # 輸出:{2, 3, 4, 5, 6, 7}
17、update(取並集,改變原來的集合)
A = set([2,3,4,5]) B = set([4,5,6,7]) A.update(B) print(A) # 輸出:{2, 3, 4, 5, 6, 7}