- 字典是python内置的数据结构之一,与列表一样是一个可变序列
- 以键值对的方式存储数据,字典是一个无序的列表
city={'安徽':1,'江苏':2,'上海':3}
2、字典的原理
字典的实现原理与查字典类似,查字典是先根据部首或者拼音查找相应的页码,Python中的字典是根据key查找value所在的位置,根据哈希函数(hash)计算得到的,键key必须是不可变序列,hash(key)
3、字典的创建与删除1、字典的创建
(1)最常用:使用花括号
city={'安徽':1,'江苏':2,'上海':3}
(2)使用内置函数dict()
dict(name = 'wsc', age = 26)4、字典的查询操作
(1)方括号[]:
city['安徽']
(2)get的方式:
city.get('安徽')
PS两者区别:
- 如果查找的键不存在,方括号[]的查询方式会抛出KryError的报错,而get的方式的结果是None
- city.get(‘北京’,99)——》会输出99,99是在查找“北京”所对应的value不存在的时,提供的一个默认值
1、增加
city['辽宁'] = 4
2、删除
del city
3、修改
city['安徽'] = 86、字典的常用操作
1、获取字典视图的三个方法
(1)keys():获取字典中所有key
(2)values():获取字典中所有value
(3)items():获取字典中所有key,value对
2、字典元素的遍历
for item in city: print(item,city[item],city.get(item))
这里的item是“键”,即“安徽”“江苏”“上海”
3、字典的特点
- 字典中所有元素都是一个key-value对,key不允许重复,value可以重复
- 字典中的元素是无序的
- 字典中的key必须是不可变对象
- 字典也可以根据需要动态地伸缩
- 字典会浪费较大的内存,是一种使用空间换时间的数据结构
希望将上述两个列表变成字典
使用内置函数zip():用于将可迭代的对象作为参数,将对象中对应的元素打包成一个元组,然后返回由这些元组组成的列表
items=['Fruits','Books','Others']
prices = [100,20,30]
a = {item.upper():price for item,price in zip(items,prices)}
print(a)
{'FRUITS': 100, 'BOOKS': 20, 'OTHERS': 30}



