Python 元组、集合
元组
()
python内置的数据结构之一,是一个不可变序列
#不可变序列与可变序列
-
不可变序列:字符串、元组
不可变序列没有增、删、改的操作 -
可变序列:列表、字典
可变序列可以对序列执行增、删、改操作,对象地址不发生更改
#元组的创建方式
- 直接使用小括号
t=('python','hello',98)
- 使用内置函数tuple()
t1=tuple(('python','hello',98))
- 只包含一个元组的元素需要使用逗号和小括号
t=(10, )
- 空元组
t=()
t1=tuple()
#元组的遍历
- 获取元组元素的方式,使用索引 t[n]
- 元组是可迭代对象,所以可以使用for…in进行遍历
t=tuple(('Python',90))
for item in t:
print(item)
集合
- Python语言提供的内置数据结构
- 与列表、字典一样都属于可变类型的序列
- 集合是没有Value的字典
#集合的创建方式
- 直接{ } ,集合不允许重复,自动去除重复元素
s={'python' ,'hello' ,98 }
-
使用内置函数set()
s=set(range(6))
s2=set([1,2,3,4,5])
s3=set((1,2,3,4,5)) -
定义空集合
s=set()
#集合的相关操作
-
集合元素的判断操作
in或not in -
集合元素的新增操作
调用add()方法,一次添加一个元素
调用update()方法,至少添加一个元素 -
集合元素的删除操作
调用remove()方法,一次删除一个指定元素,如果指定元素不存在抛出KeyError
调用discard()方法,一次删除一个指定元素,如果指定元素不存在不抛出异常
调用pop()方法,一次只删除一个任意元素
调用clear()方法,清空集合
#集合间的关系
-
两个集合是否想等
可以使用运算符==或者!=进行判断 -
一个集合是否是另一个集合的子集
可以调用方法issubset()进行判断 -
一个集合是否是另一个集合的超集
可以调用方法issuperset()进行判断 -
两个集合是否没有交集
可以调用方法isdisioint()进行判断
#集合的数学操作
-
交集
s1.intersection(s2)
s1& s2 -
并集
s1.union(s2)
s1| s2 -
差集
s1.difference(s2)
s1- s2 -
对称差集
s1.symmetric_difference(s2)
s1^ s2
#集合生成式
{i*i for i in range(1,10)}