python as lambda fiter的使用
来源:互联网 发布:阿里云 更改域名 编辑:程序博客网 时间:2024/06/13 14:36
python as lambda fiter的使用
'''Created on 2013-7-25@author: tdolyuse filter() and other method'''from random import randintfrom random import randint as ridef odd(n): return n % 2def former(): allNums = [] for eachNum in range(9): allNums.append(randint(1, 99)) print filter(odd, allNums)def refactoring1(): allNums = [] for eachNum in range(9): allNums.append(randint(1, 99)) print filter(lambda n : n%2, allNums) def refactoring2(): allNums = [] for eachNum in range(9): allNums.append(randint(1, 99)) print [n for n in allNums if n%2]def refactoring3(): print [n for n in [ri(1, 99) for eachNum in range(9)] if n%2]if __name__ == '__main__': former() refactoring1() refactoring2() refactoring3()
参考结果:(运行会不一样)[49, 89, 17, 75, 59][55, 79, 87, 71, 67, 9][25, 15, 65, 99][21, 29, 71, 87, 73, 31]