字典中存储的每一个元素都是键值对, 并且在字典中根据键(关键字)去查找某个元素的效率非常高.
为了实现高的查询效率, 字典被实现成了一种非序列式容器, 也就导致字典无法根据索引获得元素, 同样也不支持片操作.
字典更占内存,内存换时间
如何定义一个字典呢?
字典中的每一个元素都是一个 键值对,键值之间:
分割, 每个字典元素(键值对)之间用,
分割, 整个字典包括在花括号{}
中
my_dict = {
key1: value1, key2: value2, key3: value3}
键和值的特点:
-
键是唯一的, 如果重复最后的一个键值对会替换前面的,键的类型一般情况下使用字符串、数字类型。
-
值不需要唯一, 可以为任何的数据类型。
如何访问元素?
字典中根据键获得值的操作, Python 提供了两种方式:
-
直接通过键来获得, 但当键不存在时, 会抛出错误.
-
通过 get 方法来根据键获得值, 如果键不存在则会返回 None, 该返回默认值也可自定义
person = {
'name': 'Obama', 'age': 18, 'sex': '男'}
# 如果 key 不存在会报错
print(person[&#