python-字典(创建方式、常用的操作方式)
一、字典
概述:字典是Python内置的数据结构之一,与列表一样是一个可变序列,但是它是以键值对的方式存储数据,字典是一个无序的序列。
特点:
- 字典中的所有元素都是一个key-value对,key不允许重复,value可以重复
- 字典中的元素是无序的
- 字典中的key必须是不可变对象
- 字典也可以根据需要动态地伸缩
- 字典会浪费较大的内存,是一种使用空间换时间的数据结构
二、字典的创建方式
注意:字典创建时候值可以重复,键不可以重复
# @Author:韩慧腾 # @Time :2022/7/1 9:01 # @File :dict_Demo0.py # 努力已经来不及了,你得拼命 #创建字典 a={北京:32.1,上海:29.9,三亚:33.4} print(a) #{北京: 32.1, 上海: 29.9, 三亚: 33.4} print(type(a)) #<class dict> #使用内置函数dict创建字典 aa=dict(北京=32.1,上海=29.9,三亚=33.4) print(aa) #{北京: 32.1, 上海: 29.9, 三亚: 33.4} print(type(aa)) #<class dict> #创建空字典 d={} print(d)
三、字典中元素的获取
# @Author:韩慧腾 # @Time :2022/7/1 9:24 # @File :dict_Dmo1.py # 努力已经来不及了,你得拼命 d=dict(北京=32.1,上海=29.9,三亚=33.4) print(d[北京]) #32.1 print(d.get(北京)) #32.1 print(d.get(北京,30)) #32.1 列表中有北京这个键,所以该默认值并没有什么用 print(d.get(天津,30)) #30 列表中没有天津这个键,所以会输出默认值30 获取元素的时候,第二个参数是当字典中没有该键时候,会输出该默认值
四、字典的常用操作
-
Key的判断
# @Author:韩慧腾 # @Time :2022/7/1 9:38 # @File :DICT_Demo2.py # 努力已经来不及了,你得拼命 d=dict(北京=32.1,上海=29.9,三亚=33.4) print(北京 in d) #True print(北京 not in d) #False print(南京 in d) #False print(南京 not in d) #True
-
字典元素的删除
-
字典元素的新增
# @Author:韩慧腾 # @Time :2022/7/1 18:47 # @File :dict_Demo3.py # 努力已经来不及了,你得拼命 d=dict(北京=32.1,上海=29.9,三亚=33.4) #删除字典元素 del d[北京] print(d) #{上海: 29.9, 三亚: 33.4} #字典元素的新增 d[南京]=30.1 print(d) #{上海: 29.9, 三亚: 33.4, 南京: 30.1} #清空列表 d.clear() print(d) #{}
-
获取字典视图的三个方法
# @Author:韩慧腾 # @Time :2022/7/1 18:55 # @File :dict_Demo4.py # 努力已经来不及了,你得拼命 d=dict(北京=32.1,上海=29.9,三亚=33.4) d1=d.keys() print(d1) #dict_keys([北京, 上海, 三亚]) d2=d.values() print(d2) #dict_values([32.1, 29.9, 33.4]) d3=d.items() print(d3) #dict_items([(北京, 32.1), (上海, 29.9), (三亚, 33.4)]) #以列表的形式输出 print(list(d1)) #[北京, 上海, 三亚] print(list(d2)) #[32.1, 29.9, 33.4] print(list(d3)) #[(北京, 32.1), (上海, 29.9), (三亚, 33.4)] 该集合是由元组组成的
-
字典元素的遍历
注意:item是键(key)
# @Author:韩慧腾 # @Time :2022/7/1 20:52 # @File :dict_Demo5.py # 努力已经来不及了,你得拼命 d=dict(北京=32.1,上海=29.9,三亚=33.4) #遍历字典 for i in d: print(i,d[i],d.get(i)) #注意i是键(key)
-
字典生成式
内置函数zip(),用于将可迭代的对象(eg:列表、字符串)作为参数,将对象中对应的元素打包成一个元组,然后返回由这些元组组成的列表。
# @Author:韩慧腾 # @Time :2022/7/1 21:29 # @File :dict_Demo6.py # 努力已经来不及了,你得拼命 city=[北京,上海,三亚] tem=[32.1,32,35] d={c.upper():t for c,t in zip(city,tem)} #upper可以将其变为大写字母 print(d) #{北京: 32.1, 上海: 32, 三亚: 35}
下一篇:
python破解压缩包密码(密码字典)