python中常用的推导(字典推导和列表推导)
在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)}
集合推导和字典推导都是使用大括号,区别在于是否用了冒号,有冒号的是字典,没有的是集合