1. 程式人生 > >python集合操作和內置方法

python集合操作和內置方法

關系運算 可變 iss upd 最重要的 clas 類型 介紹 sca

一 集合基本介紹

集合:在{}內用逗號隔開每個值,集合的特點:

  1. 每個值必須是不可變類型
  2. 集合是無序的
  3. 集合的值不能重復

集合的應用場景較少,最重要的應用場景為進行關系運算以及去重。

二 集合的操作

1 求兩個集合的交集

set1 = {1,2,3,4,a,b,c,d‘}
set2 = {4,5,6,7,c,d,e,f‘}print(set1 & set2)
# 輸出結果為 (4,‘c‘,‘d‘)

2 求兩個集合的並集

set1 = {1,2,3,4,a,b,c,d‘}
set2 = {4,5,6,7,c,d,e,f‘}print
(set1 | set2) # 輸出結果為 (1,2,3,4,5,6,7,‘a‘,‘b‘,‘c‘,‘d‘,‘e‘,‘f‘)

3 求兩個集合的差集

set1 = {1,2,3,4,a,b,c,d}
set2 = {4,5,6,7,c,d,e,f}
print(set1 - set2)
# 輸出結果為 {1, 2, 3, ‘b‘, ‘a‘}

4 求兩個集合的對稱差集

set1 = {1,2,3,4,a,b,c,d}
set2 = {4,5,6,7,c,d,e,f}
print((set1 - set2) | (set2 - set1))
print(set1 ^ set2) # 輸出結果為 {1, 2, ‘a‘, 5, 6, 7, ‘f‘, 3, ‘b‘, ‘e‘}

5 集合父子集關系:指的是集合包含與被包含關系

s1={1,2,3}
s2={1,2}
print(s1 >= s2)
print(s1.issuperset(s2))
print(s2.issubset(s1))


# 情況一:
print(s1 > s2) #>號代表s1是包含s2的,稱之為s1為s2的父集
print(s2 < s1)

# 情況二:
s1={1,2,3}
s2={1,2,3}
print(s1 == s2) #
s1如果等於s2,也可以稱為s1是s2的父集合

需要掌握的操作

s1={1,2,3}
# s1.update({3,4,5})
# print(s1)
# print(s1.pop())
# print(s1)

# s1.remove(2)
# print(s1)

# s1={1,2,3}
# print(id(s1))
# s1.add(4)
# print(s1)
# print(id(s1))

# s1={1,2,3}
# s1.discard(4)
# s1.remove(4)
# print(s1)

# s1={1,2,3}
# s2={4,5}
# print(s1.isdisjoint(s2))

#總結
# 存多個值
# 無序
# set可變

python集合操作和內置方法