1 Fork me on GitHub

Python常用数据结构-字典——字典推导式

字典推导式

字典推导式:可以从任何以键值对作为元素的可迭代对象中构建出字典。


字典推导式,也是创建字典的一种途径。他的语法结构:
    用大括号包围,第一部分为所需要提取和赋值的键值对,再就是循环语句,再就是逻辑分支语句(没有可不写)



例子1:
dc = {k:v for k,v in [("name","Harry Potter"), ("age",18)]}   #  k从("name","Harry Potter")取值,v从 ("age",18)取值。最后把他们通过冒号相连。
print(dc,type(dc))

返回


例子2:给定一个字典对象{'a': 1, 'b': 2, 'c': 3},找出其中所有大于 1 的键值对,同时 value 值进行平方运算。
# # 未使用字典推导式的写法
dc = {'a': 1, 'b': 2, 'c': 3}
d_old = dict()
for k, v in dc.items():
    if v > 1:
        d_old[k] = v ** 2
print(d_old)
# 使用字典推导式 d_new = {k : v ** 2 for k,v in dc.items() if v > 1 } print(d_new)

返回

 

 



实例:键值对反转

"""
给定一个字典对象,请使用字典推导式,将它的key和value分别进行交换。也就是key变成值,值变成key。

输入: {'a': 1, 'b': 2, 'c': 3}
输出: {1: 'a', 2: 'b', 3: 'c'}
"""

dc = {'a': 1, 'b': 2, 'c': 3} t1 = {v: k for k, v in dc.items()} print(dc) print(t1)

返回

 

posted @ 2022-04-28 16:53  v_jjling  阅读(582)  评论(0编辑  收藏  举报
AmazingCounters.com