字典的定义
字典是 Python 内置的一种数据类型,使用键值对(Key: Value)的形式进行储存,且查找速度很快。字典是一种可变容器模型,可储存任意类型对象。
例:
1 | Dictionary = {'Key': 'Value', 'Key0': 'Value0', 'Key1': 'Value1'} |
简单的使用字典
创建字典
在 Python 中,字典用放在花括号中的一些列键值对表示。也可以直接使用空的花括号来创建一个空字典,例如:
1 | Empty_Dictionary = {} |
访问字典中的值
想要访问字典中的值,可以通过“字典名[键]”的形式来获取值,如“Dictionary[“Key”[^0]]”将会指向与 Key 所关联的 Value。
添加键值对
字典是一种动态的结构,可以随时在其中添加键值对。格式是“字典名[键] = 值”。
修改字典中的值
修改字典中的值得格式和添加键值对的格式是一样的,也是“字典名[键] = 值”。
如何删除字典中的键值对
当字典中的信息不被需要的时候,可以使用 del 语句将相应的键值对彻底删除,必须指定字典名和要删除的键。
例:
1 | Test = {'OwO': 'QAQ'} |
字典一般用于储存什么
- 一个对象的多种信息;
- 多个对象的同一种信息。
当访问到字典中不存在的值需要返回一段文本时
这个时候可以使用 get()
函数,置顶想要获取的键和当这个键不存在时反馈的文本。
例:
1 | Dictionry = {'OwO': 'QAQ'} |
遍历字典
当字典中的键值对数量庞大时,支持便利字典就显得很重要。字典可用于以各种方式存储信息,因此有多种遍历方式:可遍历字典的所有键值对,也可仅遍历键或值。
遍历所有键值对
- 想要遍历所有键值对,首先要获取每个键值对的键和值,将他们制成一个列表,这样可以方便我们便利字典;
- 不能够直接通过字典来便利键值对,直接遍历字典会默认使用
key()
函数,只会获取到字典的键; - 想要获取分开键和值的两个列表,需要使用
item()
函数。item()
会自动生成键和值的列表。如果使用 for 循环语句来获取这两个列表,需要使用两个变量来分别承载键和值。第一个变量会获取到全都是键的列表,第二个变量会获取到全都是值的列表。
例:
1 | Dictionary = { |
遍历字典中所有的键
- 可以使用
key()
函数遍历字典中的键,它会自动生成包含字典的全部的键的列表; - 如果不使用
key()
函数,直接使用 for 遍历字典,会自动使用key()
生成包含字典中全部的键的列表,然后遍历。
例:
1 | Dictionary = { |
1 | Dictionary = { |
不管带不带 key()
,都会直接生成包含全部键的列表。
按照顺序遍历字典中的所有键或者值
sorted()
函数可以将所以可迭代对象进行排序;- 字典是可迭代对象,所以可以使用
sorted()
对字典进行排序; sorted()
函数有三个可填写的参数,分别是 iterable(必填)、key(非必填)、reverse(非必填,默认为 false。);
iterable 参数
iterable 参数需要放置需要进行排序的可迭代对象。key 参数
key 参数需要填写一个函数,这个函数将会用于自定义的排序你在 iterable 中填写的可迭代对象。reverse 参数
reverse 参数是决定排序是以升序还是降序的方式排列的参数。如果这个参数的位置填写的是 true,则排列按照降序排列,如果这个参数的位置填写的是 false,则排列按照升序排列。
例:
1 | favorite_languages = { |
遍历字典中的所有的值
可以使用 values()
函数来获得一个包含字典中全部的值的列表。使用 value()
函数获取的列表并不会自动去重,如果想要给列表去重,还需要使用 set()
函数进行去重操作。
例:
1 | Dictionarys = {'0': '0', '1': '1', '2': '1', '3':'2'} |
字典和列表的互相嵌套
字典和列表可以相互嵌套,字典中也可以储存字典,列表也可以用于储存列表,两者又可以相互储存。
[^0]: 这里的双引号是表示括住的 Key 本身是字符串。