有趣的生成器函数例子
生成器函数:参数为任意的可迭代对象,返回值是生成器。
def vowel(c): return c.lower() in 'aeiou' #使用filter函数生成符合条件的字符串列表 list(filter(vowel,'Aardvark')) #使用itertools的filterfalse函数生成不符合条件的字符串列表 list(itertools.filterfalse(vowel,'Aardvark')) ['r','d','v','r','k']
>>>sample=[5,4,2,8,7,6,3,0,9,1] >>>import itertools >>>list(itertools.accumulate(sample)) [5,9,11,19,26,32,35,35,44,45]
list(map(operator.mul,range(11),range(11))) #计算两个可迭代对象对应位置上的两个元素之积