08.字典
什么是字典?
字典( dict )是一个复合数据类型,用于将其他值组合在一起。
dict(字典)类型是mapping(映像类型)的一个子类也是唯一一个子类,字典(dict)类型是一个可变数据类型,它的每一个元素都是一个键/值对(key,value)
创建字典
使用一对大括号创建一个字典
data = {
"name":"angle",
"number":1,
123:123,
}访问字典元素
通过键值(key)访问元素
当键(key)在字典中不存在的时候,会抛出一个KeyError错误
data = {
"name":"angle",
"number":1,
123:123,
}
print(data['name'])
print(data['person'])
运行结果
-----------
angle
Traceback (most recent call last):
File "E:/JetBrains/Code_practice_project/test/1.py", line 8, in <module>
print(data['person'])
KeyError: 'person'get(key[,default] )
如果key在字典中,则返回key的值,否则返回default。 如果未给出default,则默认为None,因此此方法永远不会引发KeyError
setdefault(key[,default] )
如果key在字典中,则返回其值。如果没有,插入钥匙 ,值为默认和返回默认值。 默认为 None。
修改字典
直接修改
如果键值对不存在,会添加这个键值对的
update([other_dict])
更新与来自键/值对字典等,覆盖现有的密钥。返回None
删除字典
使用del语句删除字典
pop(key[, default])
如果key在字典中,则将其删除并返回其值,否则返回default。 如果未给出default并且key不在字典中,则引发KeyError。
clear()
清除所有键值对
popitem()
删除字典的最后一个键值对
返回所有键值对
items()
返回字典的所有键值对
返回所有键
keys()
返回所有键
返回所有值
values()
返回所有值
检查字典中是否存在键或值
可以使用in和not in操作符判断某个键或者值存在于字典中
直接赋值和 copy 的区别
copy()
返回字典的浅表副本。
可以通过以下实例说明:
实例中 dict2 其实是 dict1 的引用(别名),所以输出结果都是一致的,dict3 父对象进行了深拷贝,不会随dict1 修改而修改,子对象是浅拷贝所以随 dict1 的修改而修改。
最后更新于
这有帮助吗?
