0.狀態(tài)機(jī)模塊

GUI涉及到挺多的狀態(tài)改變 , 以前一直用 if...else 來判斷 , 最近讀了設(shè)計(jì)模式 ,發(fā)現(xiàn)有個(gè)狀態(tài)模式 , 隨后發(fā)現(xiàn)了狀態(tài)機(jī)這個(gè)東西 .

python的狀態(tài)機(jī)模塊挺多的 , 不過好像很多都不更新了.
推薦2個(gè)狀態(tài)機(jī)模塊 , 但是也沒有太深入的使用經(jīng)驗(yàn) , 就跑跑例子 , 以后有更詳細(xì)的pyqt例子再補(bǔ)上 .
1: pip install python-statemachine
官方例子 : https://github.com/fgmacedo/python-statemachine

2.pip install state_machine
官方例子 : https://github.com/jtushman/state_machine

1的 最近一次更新在6個(gè)月以前 , 使用類繼承mixin方式 , 不過有些地方不如2個(gè)人性化;
2的設(shè)計(jì)更人性化一些 , 包括狀態(tài)改變beforeafter , 不過由于是裝飾器實(shí)現(xiàn)的動(dòng)態(tài)增加屬性 , 有些地方編輯器智能提示可能就靠不上了.

兩者實(shí)現(xiàn)實(shí)現(xiàn)方式不一樣 , 有興趣可以讀讀源碼 .

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 目錄 一. 背景 二. 概念 1.1 狀態(tài)機(jī)模型的概念 2.2 組成要素 3.3 三個(gè)特征 4.4 執(zhí)行邏輯 5....
    獨(dú)釣寒江雪_520閱讀 21,204評(píng)論 4 46
  • 一、Python簡(jiǎn)介和環(huán)境搭建以及pip的安裝 4課時(shí)實(shí)驗(yàn)課主要內(nèi)容 【Python簡(jiǎn)介】: Python 是一個(gè)...
    _小老虎_閱讀 6,356評(píng)論 0 10
  • # Awesome Python [![Awesome](https://cdn.rawgit.com/sindr...
    emily_007閱讀 2,347評(píng)論 0 3
  • # Python 資源大全中文版 我想很多程序員應(yīng)該記得 GitHub 上有一個(gè) Awesome - XXX 系列...
    小邁克閱讀 3,130評(píng)論 1 3
  • 一個(gè)灼熱的夏天,一場(chǎng)突如其來的大雨,踏破兵荒馬亂的青春,一場(chǎng)逃離,最后卻陷入一場(chǎng)初戀的糾葛,不得解脫。 懷著喜悅的...
    Zihuatanejos閱讀 1,136評(píng)論 0 9

友情鏈接更多精彩內(nèi)容