记录下python中语法糖列表表达式的使用姿势,以此替换掉日常的python脚本中大量的for循环
I. 列表达式
1. 基本使用姿势
可以简单的理解为单行的for循环,形如:
1 | [xx for xx in range(0, 10)] |
2. 实例说明
下面给出几个简单的例子
case1: 列表中的每个数字获取平方
1 | >>> [x * x for x in range(0, 5)] |
case2: 列表转字符串
我们知道可以直接使用 ','.join()
方式将列表转换成字符串,但是如果列表的元素是数字,那么直接上面这种方式执行会报错
一个可选的姿势 ','.join([str(x) for x in range(0, 5)])
1 | >>> ','.join(range(0, 5)) |
case3: 字典转list
1 | >>> item = {'a': 1, 'b': 3, 'c': 10} |
II. 字典推导式 & 集合推导式
看完列表之后再看下面两个就比较简单了,使用差不了多少,举个简单的例子
字典推导式:
- 将列表推导式的中括号换成大括号
k : v
方式指定字典的key,value
1 | >>> { x: x*x for x in range(0, 10)} |
集合推导式:
使用集合推导式可以很方便的将列表转换为集合;使用列表推导式,也可以很方便的将集合转换为列表
1 | >>> { x % 6 for x in range(0, 12)} |
II. 其他
1. 一灰灰Blog: https://liuyueyi.github.io/hexblog
一灰灰的个人博客,记录所有学习和工作中的博文,欢迎大家前去逛逛
2. 声明
尽信书则不如,已上内容,纯属一家之言,因个人能力有限,难免有疏漏和错误之处,如发现bug或者有更好的建议,欢迎批评指正,不吝感激
- 微博地址: 小灰灰Blog
- QQ: 一灰灰/3302797840
3. 扫描关注
一灰灰blog
知识星球