Python中的元组和字典
元组简介
- 元组是一个不可变的序列,(元组内的数据是不可变化 的,不可更改的),不希望数据发生改变的时候我们就用元组。其余的情况都用列表
- 元素的表现形式tuple,使用()可以创建一个空的元组,当元组不是空元组时括号可以省略
- 元组的拆包是指将元组中的每一个元素都赋值给一个变量,前提是元组的元素数量与变量数量相等,如果不等,需要在某个变量前面加上*,通过*接受参数之后,结果是用一个列表来放置的。
- 除了元组可以进行拆包外,字符串、列表等都可以进行拆包,*接受参数之后同样是用列表来放置的。
字典
字典的基本介绍
- 字典属于一种新的数据结构称为映射(mapping)
- 字典的作用和列表类似,都是用来存储对象的容器
- 列表存储数据的性能好,但是查询数据的性能差,字典正好与之相反
- 在字典中每一个元素都有唯一一个名字,通过这个唯一的名字可以找到指定的元素
- 这个唯一的名字我们称之为key,通过key可以快速查询value,也可以称之为值
- 字典我们也称之为键值对(key-value)结构
- 每个字典中都可以有多个键值对,而每一个键值对我们称其为一项(item)
- 创建一个有数据的字典,语法为{key:value}
- 字典的值可以是任意对象,字典的键可以是任意的不可变对象(int,str,bool,tuple…)
- 字典的键是不能重复的,如果出现重复的后面的会替换前面的
字典的使用和操作
-
dict()函数来创建字典
-
使用key来取字典中的值,语法dict[‘key’]
-
使用dict.get(key)来取字典中的值
-
修改字典,dict[key] = value
-
向字典中添加key-value,如果添加的key已经存在于字典中,则返回该字典中此key对应的value,且不修改该value。
-
update()将其他字典的key-value添加到当前的字典当中,语法:dict.update()
-
删除字典中的元素:del 关键字删除
-
dict.popitem(),随机删除一个键值对,一般都会删除最后一个,有一个返回值,就是删除的对象,结果是一个元组
-
dict.pop(key,[default])根据key来删除键值对,返回值就是删除key对应的value
-
dict.clear()清空字典,列表也可以用这种方法来清空
-
字典的浅拷贝, 浅拷贝只能对第一层的数据进行拷贝,如果第一层的数据也是个可变类型,那么浅拷贝无法将这份数据重新拷贝一份,形成新的id。
-
字典的深拷贝,深拷贝可以对所有的数据进行拷贝,形成一个新的id
-
遍历字典
主要可以通过3种方式对字典进行遍历
- 通过key来遍历 dict.keys()
- 通过value来遍历 dict.values()
- 通过一项来遍历 dict.items()