可读运行时状态机

rrsm的Python项目详细描述


https://travis-ci.org/jnmclarty/rrsm.svg?branch=masterhttps://coveralls.io/repos/jnmclarty/rrsm/badge.svg

允许在运行时创建有限状态机,并利用简单的属性语法创建自文档代码

通常这些概念是互斥的,在任何完成的设计中都可以硬编码。该模块在原型制作过程中非常方便。

用法

>>>fromrrsmimportStateMachine>>>#Instantiation works with a list of the form ['state', ...]...#or a dictionary of the form {'state' : value, ...}...SM=StateMachine(['cool','off','on','warm'])>>>#checking state works against strings or integers:...SM=='cool'True>>>#Change the state...SM('warm')>>>#using attributes to check state:...SM==SM.coolFalse>>>SM==SM.warmTrue>>>SM.current_state'warm'>>>SM.current_code3

对于硬编码的有限状态机,超级状态机项目似乎是一个更有前途的解决方案。

此实现没有依赖项,也不导入任何标准库。它应该可以在任何python版本上工作,但它已经用2.6、2.7、3.3和2.4进行了测试。有些异常可能适用于异常处理。双关语。

安装

最简单的安装方法是:

pip install rrsm

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java不可访问配置设计   在java中使用json就像在javascript中一样   java如何屏蔽Android 4.0主密钥   java为什么clickable的预期条件不执行click()?   Azure事件中心:Kafka消费者在java中不轮询任何内容   javajaxb和enum实现接口   java如何在标记下添加ProgressBar和按钮   java如何为对象实现arrayList   使用多重匹配重载java构造方法重载   java使用for循环和if语句搜索帐户   java JPanel在JPanel中添加了顶部填充   IntelliJ将Java项目/模块转换为Maven项目/模块   java如何迭代arraylist中的arraylist   自定义类的java“找不到符号”错误