Python语言的有限状态机实现样例
#!/usr/bin/env python3class Connection(object):def __init__(self):self.change_state(ClosedConnection)def change_state(self,new_state):self.__class__ = new_statedef read(self):raise NotImplementedError("未实现")def write(self):raise NotImplementedError("未实现")def open(self):raise NotImplementedError("未实现")def close(self):raise NotImplementedError("未实现")class OpenedConnection(Connection):def read(self):print("read")def write(self):print("write")def open(self):raise RuntimeError("连接已经打开")def close(self):self.change_state(ClosedConnection)class ClosedConnection(Connection):def read(self):raise RuntimeError("连接没有打开")def write(self):raise RuntimeError("连接没有打开")def open(self):self.change_state(OpenedConnection)def close(self):raise RuntimeError("连接已经关闭")if __name__=="__main__":conn = Connection()conn.open()conn.write()
转载于:https://www.cnblogs.com/JiangLe/p/9126072.html
Python语言的有限状态机实现样例相关推荐
- VOT-toolkit Python 版本使用教程--官方样例版
1.下载与安装 不成功的话,用以下方案: 附:如果你以这种方式,可以查看./build/lib/vot/utilities/cli.py下面的输入参数的含义. 这是vot-toolkit定义输入参数的 ...
- python 标签云_Python word_cloud 样例 标签云系列(三)
word_cloud/examples at master · amueller/word_cloud · GitHub 上面是官方样例.这一篇里的大部分尝试都基于这些样例进行修改.前提是你已经完成了 ...
- mysql ddl dcl_MySQL常用DDL、DML、DCL语言整理(附样例)
在介绍这些SQL语言之前,先罗列一下mysql的常用数据类型和数据类型修饰,供查询参考 后面的带数字表示此类型的字段长度 数值型: TINYINT 1 ,SMALLINT 2,MEDIUMINT 3 ...
- python语言继承6.3节例6-1中的person_第6.3节 Python动态执行之动态编译的compile函数...
Python支持动态代码主要三个函数,分别是compile.eval和exec.本节介绍compile函数的语法和相关使用.compile函数用来编译一段字符串的源码,将其编译为字节码或者AST(抽像 ...
- Python电力系统分析包PyPsa样例代码
PyPsa是一款电力系统分析包,其可以进行稳态潮流计算(使用非线性/线性网络方程):线性最优潮流计算(线性网络约束下,计算电厂和储能分布的最小成本,使用线性网络方程):安全约束下线性最优潮流计算全电力 ...
- ACMNO.24 C语言-转置矩阵 写一个函数,使给定的一个二维数组(3×3)转置,即行列互换。 输入 一个3x3的矩阵 输出 转置后的矩阵 样例
题目描述 写一个函数,使给定的一个二维数组(3×3)转置,即行列互换. 输入 一个3x3的矩阵 输出 转置后的矩阵 样例输入 1 2 3 4 5 6 7 8 9 样例输出 1 4 7 2 5 8 3 ...
- ACMNO.21 C语言-逆序输出 输入10个数字,然后逆序输出。 输入 十个整数 输出 逆序输出,空格分开 样例输入 1 2 3 4 5 6 7 8 9 0
题目描述 输入10个数字,然后逆序输出. 输入 十个整数 输出 逆序输出,空格分开 样例输入 1 2 3 4 5 6 7 8 9 0 样例输出 0 9 8 7 6 5 4 3 2 1 提示 数组?堆栈 ...
- ACMNO.19 C语言-对角求和 求一个3×3矩阵对角线元素之和。 输入 矩阵 输出 主对角线 副对角线 元素和 样例输入 1 2 3 1 1 1 3 2 1 样例输出 3 7
这个我做了改进,可以实现NXN的矩阵.求出对角线之和! 只需要修改定义的define z的值就好! 接下来,进入正题! 题目描述: 求一个3×3矩阵对角线元素之和. 输入 矩阵 输出 主对角线 副对角 ...
- turtle python tkinter_【案例】 什么?idle 中竟然有内置 turtle 样例?(paint)
案例介绍 我打算开启一个新的方向-- turtle 库案例. 在我们下载安装完毕 Python3 后,在搜索(查找)框中输入 idle.exe,就能够打开系统内置的 Python 开发环境了.不知道有 ...
最新文章
- 如何构建高可用ZooKeeper集群
- BZOJ 4422 Cow Confinement (线段树、DP、扫描线、差分)
- Cloud Lab: 泰晓实验云台【转】
- 四处建实验室的Facebook说,我们没想跟学术界抢人啊
- CSS webkit
- 金融IT和ERP,哪个更有前途?
- php中的几个字符串操作函数strtoupper strtolower ucwords ucfirst lcfirst函数
- MYSQL8.0 OCP考试题库(如需完整版请留言)
- Java 将Word转为OFD
- java学生管理系统,(史上最全)
- 导出mysql某个表数据_mysql数据库导出指定表数据的方法
- Go语言程序开发之ARM开发环境搭建
- go-优雅地重启http服务之endless
- Recon-ng的简单使用(recon-ng v5.1.1)
- udpping检测与对端udp协议通信状况
- 运维人员必会的系统安全
- 畅捷通T+与道一云对接集成报销凭证
- STemWin学习:关于窗口消息的基础知识
- keysight-34461A使用感受
- minecraft服务器搭建教程_我的世界 创建服务器基本图文教程 怎么联机