Python 单子的其他特性

Python 单子的其他特性,PyMonad的另一个特点是名字容易混淆的幺半群(monoid)。它源自数学,指的是具有运算符和标识元素的一组数据元素,且这组数据元素相对于运算符是封闭的。自然数、add运算符和标识元素0可以组成幺半群。正整数、*运算符和标志元素1也能构成幺半群。使用|作为运算符且使用空字符串作为标识元素也能构成幺半群。

PyMonad包含许多预定义的幺半群类。可以扩展它们来添加自己的monoid类,以限制编译器只进行某些优化。还可以使用幺半群类来创建可以累积复杂值的数据结构,其值可能包括过往操作的历史记录。

本教程大部分内容都有助于读者深入理解函数式编程。理解文档是学习函数式编程的一条捷径。与其学习整门语言和整套工具集来编译并运行函数式程序,不如直接通过交互式Python进行试验。

实际上,并不需要太多特性,因为Python已经是有状态的,并规定了严格的表达式求值顺序。没有必要在Python中引入状态化对象或严格有序求值。结合函数式概念和Python的命令式实现,可以用Python编写出有用的程序。出于这个原因,本教程不再深入探讨PyMonad。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程