不知道大家有没有想过:为什么java一直到jdk8才推出lambda表达式 而python很早就有!
事实上。Python设计上函数就是一个对象,作为一门OO语言它要比Java纯粹得多,Java这种不写成类就不是对象的傻缺设计和它的废物委员会就是导致lambda表达式延迟的原因。对Python来说lambda仅仅是一个能嵌入表达式的函数定义语法而已,嵌套定义和闭包的功能具名函数也是有的。

事实上,关于lambda在Python社区是存在争议的。Python程序员对于到底要不要使用lambda意见不一致。

支持方认为使用lambda编写的代码更紧凑,更“pythonic”。
反对方认为,lambda函数能够支持的功能十分有限,其不支持多分支程序if…elif…else…和异常处理程序try …except…。并且,lambda函数的功能被隐藏,对于编写代码之外的人员来说,理解lambda代码需要耗费一定的理解成本。他们认为,使用for循环等来替代lambda是一种更加直白的编码风格。
关于lambda的争执没有定论。在实际中,是否使用lambda编程取决于程序员的个人喜好。

探讨Java直到JDK8才引入Lambda表达式的原因,对比Python中Lambda的早期应用及其实现方式。分析Lambda在Python社区引发的争议,包括其在代码紧凑性和可读性方面的优缺点。
1599

被折叠的 条评论
为什么被折叠?



