前面已经介绍过python数据类型中的字符串、元组和列表,接下来介绍另一种数据类型:字典。
字典是一种无序(3.6版本后有序)的对象集合,用{}标识,以key:value的形式存储数据。字典当中的元素是通过键(key)来存取的,而不是通过索引去取值。字典的元素是键值对,键(key)必须使用不可变类型,同一个字典中,键(key)是唯一的。
创建字典:
-
通过dict函数创建字典
-
{key1:value1,key2:value2,...,key_n:value_n}:指定具体 的字典键值对,键值对之间以逗号分隔,最后用大括号括起来
a = {}
a = {"name":"xiaobo","age":29}
b = dict(a) # {"name":"xiaobo","age":29}
b = dict([("name","xiaobo"),("age",29)]) # {"name":"xiaobo","age":29}
字典数据获取:
-
通过get(key)函数:key不存在返回None
-
通过dict['key']获取:key不存在会报错
a = {"name":"xiaobo","age":29}
print(a.get('name'))
print(a.get('name11'))
print(a['name'])
print(a['name1'])
修改字典数据:
update():当数据不存在则创建,存在则更新
假设字典为a = {"name":"xiaobo","age":29},
修改name: a['name']= "小博"
使用update()函数修改:
a = {"name":"xiaobo","age":29}
row = {"height":173}
a.update(row)
将字典的值删掉:
pop(key)函数:根据某个key删除数据,返回key对应的value,调用方法时,传入的key必须存在,否则会报错:
a = {"name":"xiaobo","age":29}
print(a.pop('name')) #xiaobo
popitem()函数:一般删除最后一个元素,空字典调用该方法会报错
a = {"name":"xiaobo","age":29}
a.popitem() # 移除age数据,剩下name
a.popitem() #此时变为空字典
a.popitem() # 空字典调用该方法会报错
clear()函数:将字典置空。
del 删除某个key:
a = {"name":"xiaobo","age":29}
del a["name"]
访问字典视图:
-
items():返回字典的所有键值对视图。
-
keys():返回字典键视 图。
-
values():返回字典值视图。
a = {"name":"xiaobo","age":29}
print(a.items()) # dict_items([('name', 'xiaobo'), ('age', 29)])
print(a.keys()) # dict_keys(['name', 'age'])
print(a.values()) #dict_values(['xiaobo', 29])
字典总结: