目录
1. 字典的关键特征
字典是 Python 中唯一实现映射关系的内置类型。
字典的关键符号是大括号({})和冒号(:);
除空字典外,只由{}组成的是集合。
#除空字典外没有冒号(:)形成映射关系的,是集合
d = {'a','b','c'}
type(d)
<class 'set'>
#空字典没有冒号(:)
d = {}
type(d)
<class 'dict'>
#同时有{}和:的类型都是字典
d = {'a':0,'b':1,'c':2}
type(d)
<class 'dict'>
2. 字典取值
我们将冒号的左边称为字典的 “键”,右边称为字典的 “值”。
在字典中,只要我们提供键,就可以获取其对应的值。方法跟序列类似,只不过这次在方括号中,咱们使用的是键,而非索引值。
通过d[key]直接获取字典某个键对应的值:
d = {'a':1,"b":2,"c":3}
d['a']
1
字典不支持索引或者切片取值:
d[0]
Traceback (most recent call last):
File "<input>", line 1, in <module>
KeyError: 0
d[:]
Traceback (most recent call last):
File "<input>", line 1, in <module>
TypeError: unhashable type: 'slice'
3. 字典:键
字典所有的键都不相同,如果创建或新增同名键,则之后修改同名键对应的值;
注意,键所赋的整数、浮点数、复数数值相同,则视为相同的键;
字典键需要为可哈希对象,参见可哈希:hashable ,常见可哈希对象包括字符串、元组、整数、浮点数、复数等,不支持列表、字典,以及带有列表、字典元素的元组或集合。
#字典所有的键都不相同,如果创建或新增同名键,则之后修改同名键对应的值
#键所赋的整数、浮点数、复数数值相同,则视为相同的键;
d = {1:'a',1.00:'b',1+0j:'c'}
d
{1: 'c'}
d = d.fromkeys('aba',1)
d
{'a': 1, 'b': 1}
d = {1:'a',2:'b',3:'c'}
d[1.0] = 'x'
d
{1: 'x', 2: 'b', 3: 'c'}
#字典键支持字符串、元组、整数、浮点数、复数
d = {0:'a',1.1:'b',-2j:'c','3AA':'d',(4,5,6):'e'}
d
{0: 'a', 1.1: 'b', (-0-2