您的位置:首页 > 编程语言 > Python开发

Python 深入理解

2011-04-11 23:33 465 查看
生成器yield

yield关键字临时挂起函数,返回值,然后继续执行,最初用于简写迭代器(iterator)逻辑,现在通常是为实现coroutine模块的通用工具

def _xrange(x=None,y=None,step=1):
s=start
if start<stop and z>0:
while s<stop:
yield s
s+=z
elif start>stop and z<0:
while s>stop:
yield s
s+=z


用生成器和列表推导式生成序列。列表推导式技术随后我们详细地讨论

>>>print [i for i in _xrange(10)]
[0,1,2,3,4,5,6,7,8,9]
>>>print [i for i in _xrange(2,10)]
[2,3,4,5,6,7,8,9]
>>>print [i for i in _xrange(10,2)]
[]
>>>print [i for i in _xrange(2,10,5)]
[2,7]
>>>print [i for i in _xrange(10,2,-1)]
[10,9,8,7,6,5,4,3]


列表及迭代推导式comprehension

推导式可以航标地生成序列羅吉,可以用于简化

map/filter/reduce 组合
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: