日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

python 實用工具狀態機transitions

瀏覽:46日期:2022-07-04 15:58:31

說明

1. 狀態機是一個非常實用的理論。在涉及到復雜的場景,建立狀態機模型,能帶來極大的方便。比如,網絡連接、模型狀態、業務邏輯。 2. 狀態機并不復雜, 重要的是它的思想,能夠極大減輕復雜度。使用時關鍵在于定義好事件和動作。

基本概念

State: 狀態 Event: 事件. 事件觸發狀態變換 Action: 動作. event發生前或后執行的動作 transition: 變換. 狀態變換

github

https://github.com/pytransitions/transitions

安裝

pip install transitions

簡單示例

# 連接協議狀態機from transitions.extensions import HierarchicalMachine as Machinefrom transitions.extensions.nesting import NestedState class ConnectionStateMachine: '''Connection state machine.''' def __init__(self, callbacks=None):''':param callbacks: callbacks for the state machine'''self.callbacks = {} # 定義狀態self.states = ['STATE_NOT_CONNECTED', { ’name’: 'STATE_CONNECTED', # 狀態名 ’on_enter’: self._on_enter_CONNECTED, # 進入狀態觸發 ’on_exit’: self._on_exit_CONNECTED, # 退出狀態觸發 ’children’: [ # 狀態嵌套'STATE_NOT_SELECTED',{ ’name’: 'STATE_SELECTED', ’on_enter’: self._on_enter_CONNECTED_SELECTED} ] }] # transition 1self.machine = Machine(model=self, states=self.states, initial='STATE_NOT_CONNECTED', auto_transitions=False) if callbacks: self.callbacks = callbacks # 定義狀態變換self.machine.add_transition(’connect’, 'STATE_NOT_CONNECTED', 'STATE_CONNECTED_NOT_SELECTED') # transition 2self.machine.add_transition(’disconnect’, 'STATE_CONNECTED', 'STATE_NOT_CONNECTED') # transition 3self.machine.add_transition(’select’, 'STATE_CONNECTED_NOT_SELECTED', 'STATE_CONNECTED_SELECTED') # transition 4self.machine.add_transition(’deselect’, 'STATE_CONNECTED_SELECTED', 'STATE_CONNECTED_NOT_SELECTED') # transition 5self.machine.add_transition(’timeoutT7’, 'STATE_CONNECTED_NOT_SELECTED', 'STATE_NOT_CONNECTED') # transition 6 # 事件觸發的動作 def _on_enter_CONNECTED(self):if 'on_enter_CONNECTED' in self.callbacks: self.callbacks['on_enter_CONNECTED']() def _on_exit_CONNECTED(self):if 'on_exit_CONNECTED' in self.callbacks: self.callbacks['on_exit_CONNECTED']() def _on_enter_CONNECTED_SELECTED(self):if 'on_enter_CONNECTED_SELECTED' in self.callbacks: self.callbacks['on_enter_CONNECTED_SELECTED']()

定義狀態機

# 一般都是兩種:不嵌套、嵌套from transitions import Machine #不嵌套from transitions.extensions import HierarchicalMachine as Machine # 嵌套 # 檢查狀態machine.statemachine.is_<state_name>()

定義狀態

# 狀態可以是三種類型: 對象、字符串、字典from transitions import Statestates = [ State(name='solid'), # 對象 'liquid', # 字符串 {'name': 'gas'} # 字典]

定義變換

# 定義函數machine.add_transition(trigger, source, dest, )trigger(str) 方法名,觸發狀態轉換source(str or list) 源狀態dest(str) 目標狀態 # 加上變換machine.add_transition(trigger='wake_up', source='asleep', dest='hanging out')machine.add_transition(’work_out’, ’hanging out’, ’hungry’)machine.add_transition(’nap’, ’*’, ’asleep’) # 從任意狀態變為asleep

以上就是python 實用工具狀態機transitions的詳細內容,更多關于python transitions的資料請關注好吧啦網其它相關文章!

標簽: Python 編程
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
精品国内亚洲2022精品成人| 中文字幕亚洲影视| 欧美福利在线| 日本伊人久久| 日韩精品a在线观看91| 亚洲欧美日本国产专区一区| 亚洲v天堂v手机在线| 麻豆精品91| 91精品国产自产在线观看永久∴ | 99精品国产一区二区三区| 精品国产中文字幕第一页| 成人一区而且| 伊人久久大香线蕉av不卡| 成人小电影网站| 亚洲二区视频| 西西人体一区二区| 激情欧美日韩一区| 久久久久久黄| 综合激情视频| 久久久久黄色| 性欧美xxxx免费岛国不卡电影| 91久久亚洲| 国产午夜精品一区在线观看| 精品视频黄色| 亚洲综合国产| 国产精品15p| 久久中文字幕av| 亚洲天堂av资源在线观看| 国产欧美精品| 夜夜精品视频| 美女久久99| 久久精品99久久无色码中文字幕| 亚洲女同一区| 国产精品片aa在线观看| 午夜影院欧美| 国产精品一区高清| 亚洲精品网址| 精品国产不卡一区二区| 日韩精品一卡二卡三卡四卡无卡| 国产精品免费大片| 午夜国产欧美理论在线播放| 国产高清精品二区| 亚洲综合欧美| 日韩av首页| 国产精品久久| 四虎精品永久免费| 丝袜诱惑一区二区| 国产一精品一av一免费爽爽| 亚洲欧洲日本mm| 久久国产欧美| 激情国产在线| 国产在视频一区二区三区吞精| 日韩**一区毛片| 日韩欧美不卡| 婷婷综合国产| 久久国产66| 欧美1级日本1级| 狠狠色狠狠色综合日日tαg| 日本黄色精品| 日韩理论片av| 91精品国产福利在线观看麻豆| 国产精品欧美在线观看| 亚洲精品人人| 日本va欧美va欧美va精品| 天堂va欧美ⅴa亚洲va一国产| 蜜桃视频在线观看一区二区| 蜜臀国产一区二区三区在线播放| 欧洲精品一区二区三区| 亚洲三级网址| 亚洲精品va| 亚洲专区一区| 欧美不卡视频| 国产一区二区三区国产精品| 亚洲综合中文| 国产亚洲在线| 欧美日韩精品免费观看视欧美高清免费大片 | 一区福利视频| 国产日韩亚洲| 人人草在线视频| 婷婷综合福利| 欧美69视频| 国产精品久久久久久久久久久久久久久 | 亚洲视频二区| 婷婷久久一区| 91tv亚洲精品香蕉国产一区| 精品99在线| 蜜臀av一区二区三区| 日韩国产在线| 丝袜美腿亚洲一区| 色爱综合网欧美| 奇米亚洲欧美| 香蕉成人久久| 婷婷久久免费视频| 日韩精品亚洲一区二区三区免费| 欧美日韩国产免费观看视频| 黄毛片在线观看| 美国欧美日韩国产在线播放| 蜜桃国内精品久久久久软件9| 欧美激情99| 国产情侣久久| 国产精品麻豆成人av电影艾秋| 日韩综合一区二区| 日韩av资源网| www在线观看黄色| 国产精品天堂蜜av在线播放| 亚洲一二三区视频| 久久视频精品| 午夜欧美精品| 国产精品普通话对白| 石原莉奈一区二区三区在线观看| 国产午夜久久| 欧美日中文字幕| 视频在线观看一区二区三区| 青青在线精品| 国产激情在线播放| 国产精品丝袜在线播放| 日本午夜精品久久久| 日本久久一区| 国产亚洲人成a在线v网站 | 久久久一二三| 欧美日韩中文字幕一区二区三区| 久久精品青草| 一区二区亚洲精品| 久久精品国语| 午夜国产精品视频| 国产精品九九| 欧美日韩日本国产亚洲在线 | 国产自产自拍视频在线观看| 蜜臀av国产精品久久久久| 老司机精品视频在线播放| 青青草精品视频| 日本黄色精品| 99国产精品久久久久久久| 国产精品白浆| 中文精品视频| 国产一区二区三区黄网站| 美美哒免费高清在线观看视频一区二区 | 国产伦精品一区二区三区视频| 欧美亚洲日本精品| 久久99久久人婷婷精品综合| 亚久久调教视频| 麻豆91小视频| 亚洲专区在线| 欧美亚洲国产日韩| 在线视频观看日韩| 日本天堂一区| 中文字幕中文字幕精品| 日韩在线免费| 亚洲精品一区二区妖精| 免费在线观看日韩欧美| av资源中文在线天堂| 久久高清免费观看| 久久亚洲国产精品尤物| 亚洲综合不卡| 欧美一级专区| 丝袜a∨在线一区二区三区不卡| 亚洲人成在线网站| 久久精品电影| 亚洲久久在线| 男女激情视频一区| 99久久婷婷| 高清av不卡| 午夜av不卡| 在线日韩电影| 日韩av在线中文字幕| 中文字幕在线看片| 在线精品视频一区| 亚洲精品国模| 在线一区免费| 亚洲一区欧美| 亚洲精品激情| 日韩在线成人| 久久xxx视频| 国产精品一线| 日韩精品91亚洲二区在线观看| 亚洲一区黄色| 亚洲香蕉网站| 亚洲综合专区| 美女久久网站| re久久精品视频| 在线观看一区| 国产一区清纯| 伊人久久亚洲影院| 亚洲欧洲日本mm| 亚洲四虎影院| 日韩成人亚洲| 免费日韩av片| 日韩二区在线观看| 在线精品亚洲欧美日韩国产| 一本一道久久a久久| 久久久精品网| 一区二区国产在线| 亚洲三级网站| 精品久久中文| 91精品一区二区三区综合| 免费观看不卡av| 成人亚洲一区二区| 日韩中文在线电影| 一区二区三区四区精品视频| 蜜臀精品一区二区三区在线观看 |