python中常用的推导(字典推导和列表推导)

枫铃3年前 (2021-08-07)Python304

在python开发中经常需要书写这样的代码

result = list()
for data in datas:
     if data not in ['a', 'b']:
        result.append(data)

这时候我们就可以使用列表推导来替代以上的代码,列表推导简洁明了而且代码量少,运行速度也快

result = [data if data not in ['a', 'b'] for data in datas]

列表推导内部可以使用循环和判断语句,最好只有简单的循环和判断语句,否则代码可读性很差

字典推导和列表推导类似

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
test = [
    (86, 'china'),
    (91, 'india'),
]
result = {country: code for code, country in test}

与此类似的还有集合推导

result = {chr(i) for i in range(32, 256)}

集合推导和字典推导都是使用大括号,区别在于是否用了冒号,有冒号的是字典,没有的是集合

相关文章

python 判断变量是否是 None 的三种写法

代码中经常会有变量是否为...

Python 下JSON的两种编解码方式实例解析

Python 下JSON的两种编解码方式实例解析

概念 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,易于人阅读和编写。在日常的工作中ÿ...

如何使用python numpy中的数组复制

在使用python时我们...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。