复合数据类型
python中的复合数据类型-----列表 元组 集合 字典
在复合数据类型中可以存储多种数据类型
一.列表
列表的定义:
全局函数:list()
a = list()
符号:
a = [ ]
列表种常用的方法:
append() -------- 向列表的尾部添加元素
insert(index,object(所添加的值)) -------- 向指定的下标处添加元素
注意:所添加的元素在目标下标处 原来的元素及后面的元素会向后移动
sort()-------- 进行排序(从小到大 int类型)可以对字母进行排序(ASCII值)类型不能混,也可以对中文字符进行排序(根据相应的编码)
int类型:
字符:
index(列表中元素的值)-------- 返回的是元素在列表中的第一个位置
注意:index()有返回值(序号)且当查看的元素有多个是只返回序列号最小的一个
reverse()------------ 将列表进行翻转
remove()---------- 删除某个元素,如果有重复,删除的是第一次出现的元素,如果元素不存在会 报错 无返回值
count()-------- 返回的是某个元素在列表里面的个数 有返回值(返回值的个数)
clear()--------- 清除元素 (清除列表中的所有元素)
copy()-------- 浅拷贝对象 不等价与 = (一般需要有一个容器来接受,接受的列表会被覆盖)
extend()-------- 合并列表 (被合并的列表原有值不变)
pop()-------默认删除列表尾部的元素pop()不跟参数(pop(参数) 参数-----是指元素的下标 ) 注意:有返回值 返回被删除的元素
列表可通过下标可以直接更改列表里面某一个元素的值
集合
集合的定义:全局函数set()
a = set()
type(a)
<class 'set'>
a = {}
type(a)
<class 'dict'>
符号: a= {1,2} 注意:用{ }里面不跟参数时,a表示的是字典,而不是集合
type(b)
<class 'set'>
集合是无序的,因此无法确定项目的显示顺序,也不能用下标法获取元素(集合中没有重复的元素)
集合中常用的方法:
clear() ---------- 清除集合中的所有元素
copy()-----------拷贝集合中的所有元素
注意:当用一个有元素的集合去接受拷贝的集合时,接受的集合会被覆盖
remove (元素)------ 删除元素,如果元素不存在会报错,没有返回值
pop()--------删除集合中的第一个元素 并返回被删除的元素
add() ------ 添加 ,添加重复的元素的时候不会报错,但是不能成功添加,因为集合元素不能重复
difference(集合) ------- 差集 注意:该方法并不是数学上的求差集,而时使用该方法的集合与另一集合存在的不同元素
intersection(集合)------- 交集 一般需要一个集合接受,并且集合会被覆盖
union (集合)------- 并集 不会改变原来的集合 一般需要一个集合接受,并且集合会被覆盖
update(集合) ----- 更新意思 更新集合(合并集合)会改变使用该方法的集合,另一个不改变
discard(元素)-------- 移除元素,移除不存在的元素的时候,不会报错 与 remove() 有区别
元组 :
元组的定义:函数 :tuple()
a = tuple()
符号: a = ()
元组是有序的可以通过下标来获取元素
元组是一个不可变(指向不可变:不能通过下标来改变元素的值)类型。
但是元组里面的元素可以是可变类型----(可变类型:例如 列表 及其他可变的有序类型)
常用元组方法:
count------统计元素在元组中的个数,并返回个数
如果元组中有一个元素是一个可变类型,count()不会统计类型的该元素
index-----返回元素在元组的第一个位置 如果元组中的元素是可变类型index方法不能返回元素在元组中的下标,并且会报错
字典:
字典的定义:函数----dict()
a = dict()
a = {"key":"value"}
字典是由键和值组成的,因此可以通过键来获取和修改该键所对应的值
字典中的常用方法:
clear-------清除字典中的所有键值对(清空字典)
copy-------拷贝字典中的所有值 如果用不为空的字典接受,改字典的值会被覆盖
get(key) -------- 通过key获取value的值,注意:如果获取不存在的key,返回的是None
items() --------- 获取所有的键值对
keys() ---------- 获取所有的键
values()------获取字典中所有的值
setdefault() ---------- 设置默认值(指定的键返回项目的值。如果键不存在插入此键,并用None表示改键的值)
pop(key) --------通过key值删除键值对,并返回被删除的值,如果没有则抛出异常
popitem ()------默认删除后进的键值对 ,返回的是删除的键值对
列表的遍历:
for k in list:
print(k)
字典的遍历:
for i in dict :
print(i,dict[i])-----i 表示 key dict[i] 表示 value