一、字典的定义
字典是可变容器模型,且可存储任意类型对象。
字典的每个键值 key=>value
对用冒号分割,每个键值对之间用逗号分割,整个字典包括在花括号 {}
中。
字典是可变类型的对象。
我们也可以理解为,字典类似Json结构。
#!/usr/bin/env
# 定义一个空字典
dict_01 = {}
print(dict_01)
# 定义一个包含键值对的字典
dict_02 = {'name': 'xiaoxiao', 'age': 22}
print(dict_02)
二、访问字典中的数据
Python中,可以使用键值key
来获取其对应的值value
。
#!/usr/bin/env
# 定义一个包含键值对的字典
dict_02 = {'name':'xiaoxiao','age':22}
# 输出key为name所对应的值
print(dict_02['name'])
三、修改字典、添加数据
Python中,修改数据是指针对已存在的键值对做修改操作。
#!/usr/bin/env
# 定义一个包含键值对的字典
dict_02 = {'name':'xiaoxiao','age':22}
# 把age对应的值改为18,并输出
dict_02['age'] = 18
print(dict_02['age'])
Python中,添加数据是指针对字典里没有该键值对做追加操作。
#!/usr/bin/env
# 定义一个包含键值对的字典
dict_02 = {'name':'xiaoxiao','age':22}
# 添加key性别gender,其对应的值为male
dict_02['gender'] = 'male'
print(dict_02['gender'])
print(dict_02)
四、删除字典元素
在Python中删除某个字典键值对,又或者是整个字典,都可以使用del
语句。
#!/usr/bin/env
# 定义一个包含键值对的字典
dict_02 = {'name':'xiaoxiao','age':22}
# 删除age所在的键值对
del dict_02['age']
print(dict_02)
# 删除整个字典
del dict_02
# 由于在输出之前,字典已经被删除,所以会报错
print(dict_02)
如果我们只是想了清空字典内的键值对而不销毁字典,可以使用clear()
方法清空字典中所有的键值对。
#!/usr/bin/env
# 定义一个包含键值对的字典
dict_02 = {'name':'xiaoxiao','age':22}
# 清空字典中的数据,但不销毁字典
dict_02.clear()
print(dict_02)
五、字典的遍历
Python中,可以使用for
循环遍历字典的键值对内容。keys()
方法:获取字典中的所有keyget()
方法:根据key获取对应的value
#!/usr/bin/env
# 定义一个包含键值对的字典
dict_02 = {'name':'xiaoxiao','age':22}
# 遍历字典
for temp in dict_02.keys():
print(dict_02.get(temp))
更详细的可以参考这篇博文:https://blog.junphp.com/details/222.jsp
六、字典的特性
1、不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会覆盖前一个值。
2、键必须不可变,所以可以用数字,字符串或元组充当,不能使用列表。