首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > perl python >

新手一点点小疑点.

2013-03-06 
新手一点点小问题..a 10x [x for key in range(10)]第二行代码要怎么理解???会生成10个x值, 那种写法

新手一点点小问题..
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))

热点排行