字典(dictionary)是Python中另一个非常有用的内置数据类型。
列表是有序的对象集合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。
字典是一种映射类型,字典用 { } 标识,它是一个无序的 键(key) : 值(value) 的集合。
dict1 = { 'a': 'Aleshu', 'b': 'Aleshu', 'c': 2024, 'd': 2023 }
dict2 = { 'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5 }
在同一个字典中,值可以取任何数据类型,但键必须是不可变的,可以使用字符串,数字或元组,但不能使用列表。
01 访问字典中的值
把相应的键放入到方括号中,如下实例:
dict1 = { 'a': 'Aleshu', 'b': 'Aleshu', 'c': 2024, 'd': 2023 }
print("dict1['a']: ", dict1['a'])
以上实例输出结果:
如果用字典里没有的键访问数据,会输出错误如下:
dict1 = { 'a': 'Aleshu', 'b': 'Aleshu', 'c': 2024, 'd': 2023 }
print("dict1['e']: ", dict1['e'])
02 修改字典
向字典添加新内容的方法是增加新的键/值对,修改或删除已有键/值对,如下所示:
dict1 = { 'a': 'Aleshu', 'b': 'Aleshu', 'c': 2024, 'd': 2023 }
dict1['e'] = 2022
print("dict1['e']: ", dict1['e'])
以上实例输出结果:
03 删除字典元素
能删单一的元素也能清空字典,清空只需一项操作。
显示删除一个字典用del命令,如下实例:
dict1 = { 'a': 'Aleshu', 'b': 'Aleshu', 'c': 2024, 'd': 2023 }
del dict1['a'] # 删除键 'a'
print("dict1:", dict1)
dict1.clear() # 清空字典
print("dict1:", dict1)
del dict1 # 删除字典
print("dict1['a']:", dict1['a'])
以上实例输出结果:
04 字典函数
04.01 len(dict)
计算字典元素个数,即键的总数。
04.02 str(dict)
输出字典,以可打印的字符串表示。
04.03 type(variable)
返回输入的变量类型,如果变量是字典就返回字典类型。
05 字典方法
05.01 radiansdict.clear()
删除字典内所有元素
05.02 radiansdict.copy()
返回一个字典的浅复制
05.03 radiansdict.fromkeys()
创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值
05.04 radiansdict.get(key, default=None)
返回指定键的值,如果值不在字典中返回default值
05.05 key in dict
如果键在字典dict里返回true,否则返回false
05.06 radiansdict.items()
以列表返回可遍历的(键, 值) 元组数组
05.07 radiansdict.keys()
返回一个迭代器,可以使用 list() 来转换为列表
05.08 radiansdict.setdefault(key, default=None)
和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default
05.09 radiansdict.update(dict2)
把字典dict2的键/值对更新到dict里
05.10 radiansdict.values()
返回一个迭代器,可以使用 list() 来转换为列表
05.11 pop(key[,default])
删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值。
05.12 popitem()
随机返回并删除字典中的最后一对键和值。
感兴趣的小伙伴可以加入我们的频道:字典(Dictionary) - 乐述云享 (aleshu.com)
这里可以实时交流不懂的地方,欢迎小伙伴们来讨论:【频道】Python入门教程(BlenderPython) - 乐述云享 (aleshu.com)