码迷,mamicode.com
首页 > 编程语言 > 详细

[持续更新]Python 技巧

时间:2015-02-28 15:52:37      阅读:134      评论:0      收藏:0      [点我收藏+]

标签:

本文以 Python 2.7 为基础。

 

lambda 函数实现递归

方法一:传递一个 self 参数

求阶乘:

1 frac = lambda self, x: self(self, x - 1) * x if x > 1 else 1
2 print frac(frac, 4)

方法二(匿名函数也可以实现递归):将一个完整的 lambda 函数体作为参数

求最大公因数:

(lambda a, b, s = lambda a, b, f: f(b, a % b, f) if b else a: s(a, b, s))(3, 5)

[持续更新]Python 技巧

标签:

原文地址:http://www.cnblogs.com/lsdsjy/p/4305340.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!