您現在的位置是:電腦技術吧?>? 基礎知識 ??>??框架,Php框架??>??正文詳情

框架,Php框架

查千易2019-11-26 15:51:27 人圍觀
簡介框架圖片大全本文主要介紹了在Python中實現簡單狀態框架的方法,涉及到Python狀態框架的實現技巧,具有一定的參考價值,需要的朋友可以參考下面的例子來描述在Pythonhtml簡單框架代碼

這篇文章主要介紹了Python實現簡單狀態框架的方法,涉及Python狀態框架的實現技巧,具有一定參考借鑒價值,需要的朋友可以參考下本文實例講述了Python實現簡單狀態框架的方法。

分享給大家供大家參考。

具體分析如下:這里使用Python實現一個簡單的狀態框架,代碼需要在python3.2環境下運行代碼如下:from time import sleepfrom random import randint, shuffleclass StateMachine(object):''' Usage: Create an instance of StateMachine, use set_starting_state(state) to give it aninitial state to work with, then call tick() on each second (or whatever your desiredtime interval might be. '''def set_starting_state(self, state):''' The entry state for the state machine. '''state.enter()self.state = statedef tick(self):''' Calls the current state's do_work() and checks for a transition '''next_state = self.state.check_transitions()if next_state is None:# Stick with this stateself.state.do_work()else:# Next state found, transition to itself.state.exit()next_state.enter()self.state = next_stateclass BaseState(object):''' Usage: Subclass BaseState and override the enter(), do_work(), and exit() methods.enter() -- Setup for your state should occur here. This likely includes addingtransitions or initializing member variables.do_work() -- Meat and potatoes of your state. There may be some logic here that willcause a transition to trigger.exit() -- Any cleanup or final actions should occur here. This is called justbefore transition to the next state.'''def add_transition(self, condition, next_state):''' Adds a new transition to the state. The condition param must contain a callableobject. When the condition evaluates to True, the next_state param is set asthe active state. '''# Enforce transition validityassert(callable(condition))assert(hasattr(next_state, enter))assert(callable(next_state.enter))assert(hasattr(next_state, do_work))assert(callable(next_state.do_work))assert(hasattr(next_state, exit))assert(callable(next_state.exit))# Add transitionif not hasattr(self, transitions):self.transitions = []self.transitions.append((condition, next_state))def check_transitions(self):''' Returns the first State thats condition evaluates true (condition order is randomized) '''if hasattr(self, transitions):shuffle(self.transitions)for transition in self.transitions:condition, state = transitionif condition():return statedef enter(self):passdef do_work(self):passdef exit(self):pass################################################################################################################################# EXAMPLE USAGE OF STATE MACHINE #####################################################################################################################################class WalkingState(BaseState):def enter(self):print(WalkingState: enter())def condition(): return randint(1, 5) == 5self.add_transition(condition, JoggingState())self.add_transition(condition, RunningState())def do_work(self):print(Walking...)def exit(self):print(WalkingState: exit())class JoggingState(BaseState):def enter(self):print(JoggingState: enter())self.stamina = randint(5, 15)def condition(): return self.stamina = 0self.add_transition(condition, WalkingState())def do_work(self):self.stamina -= 1print(Jogging ({0})....format(self.stamina))def exit(self):print(JoggingState: exit())class RunningState(BaseState):def enter(self):print(RunningState: enter())self.stamina = randint(5, 15)def walk_condition(): return self.stamina = 0self.add_transition(walk_condition, WalkingState())def trip_condition(): return randint(1, 10) == 10self.add_transition(trip_condition, TrippingState())def do_work(self):self.stamina -= 2print(Running ({0})....format(self.stamina))def exit(self):print(RunningState: exit())class TrippingState(BaseState):def enter(self):print(TrippingState: enter())self.tripped = Falsedef condition(): return self.trippedself.add_transition(condition, WalkingState())def do_work(self):print(Tripped!)self.tripped = Truedef exit(self):print(TrippingState: exit())if __name__ == __main__:state = WalkingState()state_machine = StateMachine()state_machine.set_starting_state(state)while True:state_machine.tick()sleep(1)希望本文所述對大家的Python程序設計有所幫助。

版權聲明:本文由 查千易 整理編輯。

原標題:框架怎么畫,漂亮前端框架

轉載注明出處:http://www.dn9ww09s.icu/basics/14498.html

文章評論

    共有條評論來說兩句吧...

    用戶名:

    驗證碼:

作者推薦

  • win7系統怎么設置路由器上網,win7如何設置路由器wifi

    win7系統怎么設置路由器上網,win7如何設置路由器wifi 相關圖片wind7系統怎樣連接路由器WiFi允許您隨時隨地隨意上網,不再受網線距離的限制。那么我們如何在win7系統中設置無線路由器呢?具體步驟是什么?讓我們和超人編輯器一起設置無線路由器...

  • 動態緩沖,緩沖gif

    動態緩沖,緩沖gif 相關圖片動態緩沖系數緩沖區公式在制作特殊效果時非常有用,在著名的三星導航菜單中使用。現在很多網站都備受關注,其中緩沖導航是其中一大亮點。本文以一個德國網站的導航為例,詳細...

  • 幸運奪寶,奪寶幸運值

    幸運奪寶,奪寶幸運值 相關圖片王者奪寶幸運值滿幸運戰利品是一個非常有趣的軟件。在這個軟件中,用戶可以使用幸運豆來交換商品。你需要什么步驟來為幸運戰利品充電?下一步,超人軟件將為你帶來一個關于如...

  • win7 防火墻,win7防火墻怎么打開

    win7 防火墻,win7防火墻怎么打開 相關圖片win7防火墻打不開防火墻是眾多用戶安裝的必備軟件之一,而為了讓用戶下載,各大安全廠商也紛紛自制防火墻。相比之下,Windows 7系統的防火墻外觀簡單,但經過多年的發展電腦防火墻...

  • 大問題經典句子,大問題經典語錄

    大問題經典句子,大問題經典語錄 相關圖片紅樓夢幾大經典問題本文主要討論夢織女的經典問題。讓我們看看編輯為你安排了什么!1在DW中,如何輸入空間?進入空間的問題似乎已經成為DW中的一個常見問題。我們可能在許多介紹...

  • pdf壓縮到指定大小,pdf文件怎么壓縮的小一點

    pdf壓縮到指定大小,pdf文件怎么壓縮的小一點 相關圖片如何縮小pdf文檔大小Pdf文件一直深受辦公人員的喜愛,使得Pdf文件的閱讀、編輯和轉換成為用戶關注的熱點問題。最近,如何壓縮PDF文件的大小已經逐漸移到桌面上。網友對于這個比較...

  • 便捷的方法,爬樹便捷方法

    便捷的方法,爬樹便捷方法 相關圖片便捷的疊衣方法本文主要介紹了Dreamweaver的便捷技巧和方法。讓我們在下面介紹他們!一。通過靈活使用樣式熟悉Web設計的用戶知道調用樣式有很多方法。我們可以右鍵單擊并選最便捷發...

  • 電競,電競網

    電競,電競網 相關圖片QQ電競牛角電子商務是一款為用戶提供最新、最熱門的電子商務信息的移動軟件。但最近,一個小伙伴xiaosuperman和蕭邊說,他們不能登錄時,使用牛角電子競爭。怎么了。im電競平臺...

  • 文字效果轉換彎曲,文字效果轉換彎曲倒v型

    文字效果轉換彎曲,文字效果轉換彎曲倒v型 相關圖片PPT文字彎曲如果你有更好的方法,本教程只提供一個想法供你分享,讓我們看看效果第一步:使用螺旋工具繪制螺旋第二步:根據情況從中心刪除多余的節點第三步:復制一個并適當調...

  • 一碼付,一碼付手續費

    一碼付,一碼付手續費 相關圖片支付寶掃碼付高速費融碼支付作為一款方便、實用、功能強大的收款軟件,受到了很多人的喜愛。那么榮碼怎么收費呢?下一步,超人軟件編輯將為您介紹rongcodepay收藏教程。如果你不多...

熱評文章

  • win10系統平板模式,win10系統怎么退出平板模式

    win10系統平板模式,win10系統怎么退出平板模式 相關圖片win10平板模式怎么關剛剛升級win10系統的用戶對新版windows10有一定的了解。超人小編認為,win10最大的特點是可以同時應用于平板電腦和個人電腦,使桌面的桌面可以像平板電windows10平板...

  • 美團外賣打賞取消了嗎,為什么有些騎手打賞不了

    美團外賣打賞取消了嗎,為什么有些騎手打賞不了 相關圖片美團打賞騎手他知道是誰嗎近日,為了督促外賣男孩更好地為用戶服務,美團外賣推出了獎勵外賣男孩的功能。美團外賣的車手獎勵在哪里?接下來,超人將為我們帶來Android版美團外賣...

  • 設計師必備,設計師必備品

    設計師必備,設計師必備品 相關圖片設計師必備技能今天推薦的七個工件,包括經典的和新的,大致貫穿了整個UI設計的工作流程。從排版、配色、裁剪到注釋、預覽,都是由相應的良心工件推薦的,非常適合新手UI設計師...

  • word中間打字后面消失,word文檔前面打字后面消失

    word中間打字后面消失,word文檔前面打字后面消失 相關圖片word文檔打字不顯示在使用word文檔輸入內容的過程中,我們有時會遇到單詞輸入后消失的情況。怎么了?如果打字后的單詞消失了,我該怎么辦?事實上,打字后的單詞會消失文檔中打字...

  • 字體排版,字體排版技巧

    字體排版,字體排版技巧 相關圖片各種字體去年,JDC生產了很多優秀的五梅娘。。。不,H5,我們都很努力,當然,我們也積累了一些經驗和教訓。今天,從字體、排版、動態效果、音效、適配類型和創意等方面,結合文...

  • nginx配置多個server,一臺nginx支持多少并發

    nginx配置多個server,一臺nginx支持多少并發 相關圖片nginx和tomcat區別程序類人猿對nginx配置非常熟悉,但對于普通用戶來說,nginx配置是一件很奇怪的事情。Nginx是一個高性能的HTTP和反向代理服務器,以及IMAP/POPnginx反向代理配置教程...

  • 規范編寫,標準編寫規范

    規范編寫,標準編寫規范 相關圖片產品規范編寫標準這是一個相對復雜的CSS理論,它分為五個部分:基礎、布局、模塊、狀態和主題。然而,它的核心思想仍然類似于OOCSS,鼓勵使用類1。基本屬性基本屬性容易理解,這...

  • 悅跑圈怎么記錄跑步軌跡,悅跑圈查看跑步軌跡

    悅跑圈怎么記錄跑步軌跡,悅跑圈查看跑步軌跡 相關圖片悅跑圈怎樣修改跑步記錄隨著時代的發展,人們越來越關注自己的健康。其中,有很多人喜歡用越跑圈來記錄運動。岳潤泉的跑道怎么走?接下來,超人軟件小編將為大家介紹iPhone版的...

  • 在dreamweavercs6中,dreamweavercs6安裝

    在dreamweavercs6中,dreamweavercs6安裝 相關圖片dreamweaverDreamweaver CS6設置背景音樂的方法步驟:1。指定方法1的代碼。代碼指定方法是指直接在頁面的HTML代碼中設置背景音樂。在現實中,通常使用標簽來實現cs6...

  • 已拍的激萌怎么去水印,怎么刪掉激萌內部照片

    已拍的激萌怎么去水印,怎么刪掉激萌內部照片 相關圖片faceapp有水印用face u軟件自拍很可愛,但不管是視頻還是照片,都會有face u的水?敲門?如何給aceu的照片加水印?今天,超人軟件為您帶來了一個關于faceu水印的圖激萌照片怎樣徹底刪除...

關注微信

变脸官网查询