字典是Python提供的一种常用的数据结构,它用于存放具有映射关系的数据。是一种可变容器模型,且可存储任意类型对象。字典是一个无序、可变和有索引的集合。在 Python 中,字典用花括号编写{},拥有键值对即key和value组成,字典的每个键值对用冒号 : 分割,每个键值对之间用逗号 , 分割。字典中的键具有唯一性,如果键重复,则后边的键对应的值会把前面键对应的值替换掉,值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组都可以为字典的键,但是列表不可以作为key值。 eg:
dict1 = {"name":"张三","age":18,"地址":"China"}
dict2 = {"a":1,"b":2,"c":1,"d":3}
dict3 = {1:"a",2:"b",3:"c"}
dict4 = {} 表示创建一个空的字典
1、访问字典中的值
python中访问字典是通过key来访问字典中的值,如果用字典里没有的键访问数据,会输出错误。
eg:
dict1 = {"name":"张三","age":18,"地址":"China"}
m = dict1["name"]
print(m)
此时打印结果为“张三”表示访问字典key为“name”对应的值,
2、访问字典中所有的key或者所有的value
eg:
dict1 = {"name":"张三","age":18,"地址":"China"}
m = dict1.keys()
n = dict1.values()
print(m)
print(n)
此时打印结果为m的为dict_keys(['name', 'age', '地址']),获取了字典dict1中所有的key的值. n的为dict_values(['张三', 18, 'China']),获取了字典dict1中所有的value的值。
3、修改字典
字典中增加新的键对值,或者修改已有键对应的值
增加新的键对值:
dict1 = {"name":"张三","age":18,"地址":"China"}
dict1["成绩"]="优秀"
print(dict1)
此时打印结果为{'name': '张三', 'age': 18, '地址': 'China', '成绩': '优秀'},字典dict1增加一个键为“成绩”值为“优秀”的键对值。
修改已有键对应的值:
dict1={'name': '张三', 'age': 18, '地址': 'China', '成绩': '优秀'}
dict1["name"]="李四"
print(dict1)
此时打印结果为{'name': '李四', 'age': 18, '地址': 'China', '成绩': '优秀'},把字典dict1中key为”name“对应的值有张三更改成了李四。
4、删除字典元素 del()方法能删除单一元素,也可以删除字典,删除字典以后,字典就不存在了
删除单一元素:
dict1={'name': '张三', 'age': 18, '地址': 'China', '成绩': '优秀'}
del dict1['成绩']
print(dict1)
此时打印结果为{'name': '张三', 'age': 18, '地址': 'China'},删除了字典dict1中key为“成绩”和对应的value的值。
删除字典:
dict1={'name': '张三', 'age': 18, '地址': 'China', '成绩': '优秀'}
del dict1
print(dict1)
此时打印结果为“NameError: name 'dict1' is not defined”表示字典dict1已经不存在了,因为字典dict1已经被删除了。
5、清空字典 因del为删除字典,如果想清空字典可以用dict.clear()方法,表示清空字典中所有的键对值。
eg:
dict1={'name': '张三', 'age': 18, '地址': 'China', '成绩': '优秀'}
dict1.clear()
print(dict1)
此时打印结果为{},表示清空了字典dict1中的所有值,字典dict1就位一个空的字典。