集合 (set)
2018-07-23 本文已影响0人
文化银儿
1.什么是集合
(1)集合也是一种容器类的数据类型(序列),数据放在{}中,多个之间用逗号隔开:{1,2,'a'}
(2)集合是无序的(不能通过下标去取值);可变(可以增删改);元素不能重复
(3)集合相关的操作,可以进行数学集合相关的操作:判断是否包含,求交集、并集、差集、补集
2.怎么声明集合
(1)声明一个变量,附一个集合值
set0 = set() # 创建一个空的集合
set1={1,2,3}
print(set1,type(set1)) #{1, 2, 3} <class 'set'>
(2)将其他的数据转换成集合
(将其他数据转为集合,自带去重功能)
set2=set('abc12233')
print(set2) #{'1', 'a', '2', '3', 'b', 'c'}
set3=set([12,'ad','1ea','12','ad'])
print(set3) #{'12', 12, 'ad', '1ea'}
3.增删改查
注意:集合是不能查单个元素的
(1)查:遍历
for item in set2:
print(item)
'''
结果:
2
c
1
3
a
b
'''
(2)增加 (2种)
<1>集合.add(元素)
set1={2,12,3,4}
set1.add(11)
```乱序```
print(set1) #{2, 3, 4, 11, 12}
<2>集合1.update(集合2):将集合2中的元素添加到集合1中,自动去重
set1.update({'abx','素数'})
print(set1)
4.删除 (2种)
(1)集合.remove(元素,在集合中删除指定的元素)
(2)集合.pop():随机删除一个
set1.remove('ss')
print(set1)
set1.pop()
print(set1)
5.判断是否包含
(1)集合1 >= 集合2 -- 判断集合1中是否包含集合2(判断集合2中的所有的元素是否都在集合1中)
(2)集合1 <= 集合2 -- 判断集合2中是否包含集合1
print({1, 2, 3, 4} >= {1, 4}) # True
print({1, 2, 3, 4} <= {1, 2}) # False
6.数学的集合运算
(1)求并集: |
print({1, 2, 3} | {2, 3, 4, 5})
(2)求交集: &
print({1, 2, 3} & {2, 3, 4, 5})
(3)求差集: -
print({1, 2, 3} - {2, 3, 4, 5})
(4)求补集: ^
print({1, 2, 3} ^ {2, 3, 4, 5})
7.其他方法
(1)clear:清空集合
set1.clear()
print(set1, type(set1))
(2)len:获取集合中元素的个数
print(len(set1))