字典的使用
字典是有多个见对应的值成对组成(把键/值对称为项),字典的每个键/值(key/value)对用冒号(:)分割,每个项之间用逗号(,)分割,整个字典包括在花括号({})中控字典由两个大括号组成{}
键必须是唯一的,但是值不必,值可以取任何数据类型,键必须是保持不变的,如字符串,数字或者元组
函数
dict函数
可以用dict函数通过其他映射(如其他字典)或者键/值序列对建立字典
字典的基本操作
-
修改字典
向字典添加新内容的方法是增加新键/值对,修改或删除已有键/值对 -
删除字典元素
此处的删除指的是显示删除,显示删除一个字典用del命令 -
字典键的特性
1.不允许同一个键出现两次,创建是如果同一个键被复制两次后面的值会被记住
2.键必须不可变,可以用数字,字符串或者元组充当,不能用列表
len函数
len函数用于机选字典元素的个数,即键的总数
type函数
type函数返回输入的变量类型,如果输入的变量是字典,就返回字典类型
字典和列表的区别
dict的特点是:
1.查找和插入的速度极快,不会随着key的增加而变慢
2. 需要占用大量内存
list的特点是
3. 查找和插入时间随着元素的增加而增加
4. 占用空间小,浪费内存很少
所以dict是使用空间换取是时间
dict可以用在很多需要告诉查找的地方,python代码中几乎无处不在,正确使用dict非常重要,需要牢记dict的键必须是不可变的对象。
提示:
dict内部存放的顺序和键放入的顺序没有关系
字典的方法
-
clear()方法
用于删除字典的所有项
dict.clear()
dict代表字典,该方法不需要参数,该函数是一个原地操作函数,没有任何返回值 -
copy()方法
copy()方法
返回一个具有相同键/值对的新字典。这个方式叫做浅拷贝,因为值本身是相同的,而不是副本
copy()方法
dict.copy()
dict代表字典,该方法不需要参数,返回结果为一个字典的浅拷贝
替换副本的值时原始字典不受影响,如果修改了某个值(原地修改,不是替换),原始字典就会改变,因为同样的值也在源自点中,以这种方式进行赋值就是浅复制 -
fromkeys()方法
fromkeys()方法用于创建一个新的字典
dict.fromkeys(sep[,value])
此语法中,dict代表指定字典,seq代表字典键值列表;value代表可选参数,设置键序列(seq)的值。 -
get()方法
get()方法返回指定键的值,如果值不在字典中,就返回默认值
get()方法;
dict.get(key,defult = None)
dict 代表指定字典,key代表字典中要查找的键,default代表指定键的值不存在时返回,默认值,该方法结果为指定键的值,如果值不在字典中,就返回默认值None -
key in dict 方法
key in dict 此语法中 dict代表指定字典,key 代表在字典中查找键 ,如果键在字典里就返回true,否则就返回false。 -
items()方法
items()方法以列表返回可遍历的(键/值)元组数据
items()方法的语法如下
dict.items()
dict代表字典,该方法不需要参数 -
keys ()方法
keys ()方法以了列表返回一个字典的所有键
dict.keys()
返回结果为一个字典的所有键t
返回的是一个元组数列,数组中包含字典的所有键 -
setdefault()方法
setdefault()方法
和get方法类似,用于或偶的于给定键相关联的值。如果键不存在在于字典中,就会添加键并将值设为默认值 -
项目1setdefault()方法
dict.setdefault(key,default = None)
dict代表字典,key代表查找的键值,default代表键不存在时设置的默认键值,该方法没有返回值 -
update()方法
update()方法用于把字典dict2的键/值对更新到dict里面
update()方法
dict.update(dict2)
dict代表字典,dict2代表添加到指定字典dict里面的字典
提供的字典中的项被添加到旧的字典里面,如果有相同的键就会被覆盖 -
values()方法
values()方法以列表形式返回字典中的所有值,与返回键的列表不同,返回的列表中可以包含重复元素。
values()方法
dict.values()