在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中常用的推导(字典推导和列表推导)》对你有帮助,请点赞、收藏,并留下你的观点哦!