几个python one-liner

生成斐波那契数列的前10个数,从1开始。若生成前n个,改为range(n-2)。代码很简单:

List = reduce(lambda x, y: x + [x[-1] + x[-2]], range(8), [1, 1])

 

倒序打印一个数组,并用空格分隔元素。和上面一样用了reduce和lambda函数,倒序用了[::-1],也不难理解。

print reduce(lambda x, y: str(x) + ' ' + str(y), List[::-1])

 

自己打印自己

print open(__file__).read()

 

posted @ 2013-11-29 22:55  Joyee  阅读(573)  评论(0编辑  收藏  举报