codecamp

Python Lambda 函数规范 | Google 官方单行写法

Lambda函数

Tip

适用于单行函数. 建议用生成式替代 map()/filter() 与 lambda 的组合.

定义:

lambda 定义匿名函数,不像语句那样定义具名函数。

优点:

方便。

缺点:

比局部函数更难理解和调试。
缺失函数名会导致调用栈晦涩难懂。
由于 lambda 函数只能包含一个表达式,因此其表达能力有限。

结论:

适用于单行函数。
如果函数体超过60-80个字符,最好还是定义为常规的嵌套函数。
对于乘法等常见操作,应该用 operator 模块中的函数代替lambda函数。
例如,推荐用 operator.mul 代替 lambda x, y: x * y

Python 生成器规范 | Google 官方 yield 最佳实践
Python 条件表达式规范 | Google 官方三目写法
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }