元组的创建方式
#第一种创建方式,直接使用小括号
t=(10,20,30,40,'hello')
print(t)
#(10, 20, 30, 40, 'hello')
#第二种创建方式,使用tuple()内置函数
t1=tuple((10,20,30,40,'hello'))
print(t1)
#(10, 20, 30, 40, 'hello'
集合的创建方式
s={
1,2,3,3,4,4,5}
print(s)
#{1, 2, 3, 4, 5}
#第二种创建方式
s1=set(range(6))
print(s1)
#{0, 1, 2, 3, 4, 5}
s2=set([1,2,3,4,5,6])
print(s2)
#{1, 2, 3, 4, 5, 6}
集合的相关操作
1.集合元素的新增操作
- 使用add
s={
1,2,3,4,5,6}
s.add(100)
print(s)
#{1, 2, 3, 4, 5, 6, 100}
- 使用update,一次增加多个元素
s={
1,2,3,4,5,6}
s.update([10,20,30])
print(s)
#{1, 2, 3, 4, 5, 6, 10, 20, 30}
2.集合元素的删除操作
- 调用remove()方法,一次删除一个指定元素,如果指定元素不存在会抛出异常
s={
1,2,3,4,5,6}
s.remove(1)
print(s)
#{2, 3, 4, 5, 6}
- 调用discard()方法,一次删除一个指定元素,如果指定的元素不存在不会抛出异常
s={
1,2,3,4,5,6}
s.discard(100)
print(s)
#{1,2, 3, 4, 5, 6}
- 调用pop()方法,一次只删除一个任意元素
s={
1,2,3,4,5,6}
s.pop() #随机删除
print(s)
#{2, 3, 4, 5, 6}
- 清空集合clear()
s={
1,2,3,4,5,6}
s.clear()
print(s)
#set()
集合间的关系
1.一个集合是否是另一个集合的子集
可以调用方法issubset进行判断
s={
1,2,3,4,5,6}
s2={
1,2,3}
s3={
1,2,99}
print(s2.issubset(s))#True
print(s3.issubset(s))#false
2.一个集合是否是另一个集合的超集
可以调用方法issubperset进行判断
s={
1,2,3,4,5,6}
s2={
1,2,3}
s3={
1,2,99}
print(s.issuperset(s2))#true
print(s.issuperset(s3))#false
3.两个集合是否没有交集
可以调用方法isdisjoint进行判断
s={
1,2,3,4,5,6}
s2={
1,2,3}
s3={
1,2,99}
print(s2.isdisjoint(s3))#False 有交集
集合的数学操作
1.交集
s1={
10,20,30,40}
s2={
10,30,40,50}
print(s1.intersection(s2))
#{40, 10, 30}
#或者
print(s1 & s2)
#{40, 10, 30}
2.并集操作
s1={
10,20,30,40}
s2={
10,30,40,50}
print(s1.union(s2)) #去除重复合并
#{40, 10, 50, 20, 30}
#或者
print(s1 | s2)
#{40, 10, 50, 20, 30}
3.差集操作
s1={
10,20,30,40}
s2={
10,30,40,50}
print(s1.difference(s2))
#{20}
#或者
print(s1-s2)
#{20}
4.对称差集
s1={
10,20,30,40}
s2={
10,30,40,50}
print(s1.symmetric_difference(s2))
#{50, 20}
#或者
print(s1 ^ s2)
#{50, 20}
集合生成式
1.用于生成集合的公式
s1={
i*i for i in range(10)}
print(s1)
#{0, 1, 64, 4, 36, 9, 16, 49, 81, 25}