读书人

新手一点点小疑点.

发布时间: 2013-03-06 16:20:31 作者: rapoo

新手一点点小问题..
a = 10
x = [x for key in range(10)]

第二行代码要怎么理解???
会生成10个x值, 那种写法是一种固定的还是拼凑出来的?
不知道要怎么去理解.. python
[解决办法]
这叫序列表达式,或列表表达式
简单理解可以认为是一个短的for语句(这是替代理解,不是正确的理解)
就是for穷举所有符合的单元,组合成一个新的序列赋值给某个变量
例如:


>>> b = [i for i in range(10) if i < 5]
>>> b
[0, 1, 2, 3, 4]


类似有生成器表达式——写法是方括号换成小括号即可,但输出类型不同(留意输出并不是元组),请查看生成器表达式相关说明
x = (x for x in range(10))

读书人网 >perl python

热点推荐