Python容器
列表和元组
元组和列表不要求所含有的元素的种类相同,每个元素都可以是任何Python类型的对象。元组不可变,列表是可变的。
列表
列表飞上适合利用顺序和位置定位某一元素。
可由零个或多个元素组成,逗号分隔。
list()函数将其他数据类型转换成为列表类型。
包含列表的列表。
切片提取元素。列表的切片仍然是列表。
append(),extend()的用法,用错会怎样。
insert()用法,偏移量超过了尾部,不会报错会加在最后面。
del 删除指定元素。删除一个元素后位于他后面的元素会自动填补空出来的位置,列表长度减1。
del 为Python语句,而不是列表方法,del就是像赋值语句(=)的逆过程:它将一个Python对象与它的名字分离。如果这个对象无其他的名称引用,则其占用的空间也被清楚。
remove()删除具体对象。
append()、pop()操作模拟进栈出栈操作,append(),pop(0)模拟入队出队操作。
index()查询具有特定值的元素位置。
in 判断一个值是否存在于给定的列表中。
使用join转换为字符串。join为字符串方法,而不是列表方法。join()是split()的逆过程。
sort()会对原列表进行排序,改变原列表的内容。
sorted()会返回排好序的列表副本,原列表内容不变。
sort()默认从小到大,参数sort(reverse = true)可以改变为降序排列。
len()返回列表长度。
使用=赋值,使用copy()复制。
将一个列表复制到另外一个列表中:
1.copy()
2.list()
3.[::]列表分片
元组
元组不可变,就像一个常量列表。
可以利用元组在一条语句中对多个变量的值进行交换,而不需要借助临时变量。
定义元组靠的是每个元素后面的逗号。
tuple()可以用其他类型的数据来创建元组。
元组与列表
元组优点:
1.占用空间小
2.不会意外修改元组的值
3.可以将元组作为字典的键
4.命名元祖可以作为对象的替代
5.函数参数是以元组形式传递
字典
字典与列表相似,但没有顺序,因为不是通过偏移量来访问。
字典是可变的。
dict()可以将双值子序列的序列转换为字典。
使用[key]来添加或修改元素。
如果创建字典时同一个键出现了两次,后面的会取代前面的。
update()合并字典。
del删除指定键的元素。
clear()或者重新赋值{}(空字典)来将字典中的所有元素删除。
in判断一个键是否存在字典中。
[key]和get()获取元素,[key]如果键不存在字典中会报异常,get()不会。
keys()获取所有的键,返回dict_keys()即键的迭代形式。可以用list转换为列表类型。
values()获取所有值。items()获取所有的键值对,每对以元组形式。
集合
集合就像舍弃了值,仅剩下键的字典。
使用set()或者{1,2}来创建集合,只用{}会创建一个空字典。
set()将其他类型转换为集合,当字典作为参数时,只有键被使用。
&、intersection() 交集运算符
|、union() 并集运算符。
-、difference()获得差集
^、symmetric_difference()获得异或集