最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python設(shè)計(jì)模式之命令模式原理與用法實(shí)例分析

 更新時(shí)間:2019年01月11日 09:40:39   作者:Andy冉明  
這篇文章主要介紹了Python設(shè)計(jì)模式之命令模式,結(jié)合具體實(shí)例形式分析了Python命令模式相關(guān)概念、原理、定義及使用方法,需要的朋友可以參考下

本文實(shí)例講述了Python設(shè)計(jì)模式之命令模式原理與用法。分享給大家供大家參考,具體如下:

命令模式(Command Pattern):將請(qǐng)求封裝成對(duì)象,從而使可用不同的請(qǐng)求對(duì)客戶進(jìn)行參數(shù)化;對(duì)請(qǐng)求排隊(duì)或記錄請(qǐng)求日志,以及支持可撤消的操作.

下面是一個(gè)命令模式的demo:

#!/usr/bin/env python
# -*- coding:utf-8 -*-
__author__ = 'Andy'
"""
大話設(shè)計(jì)模式
設(shè)計(jì)模式——命令模式
命令模式(Command Pattern):將請(qǐng)求封裝成對(duì)象,從而使可用不同的請(qǐng)求對(duì)客戶進(jìn)行參數(shù)化;對(duì)請(qǐng)求排隊(duì)或記錄請(qǐng)求日志,以及支持可撤消的操作.
"""
# 命令類
class Command(object):
  def __init__(self, receiver):
    self.receiver = receiver
  def execute(self):
    pass
# 執(zhí)行接收者的操作
class ConcreteCommand(Command):
  def execute(self):
    self.receiver.action()
# 接收命令
class Invoker(object):
  def __init__(self):
    self.command = ''
  def setcommand(self,command):
    self.command = command
  def excutecommand(self):
    self.command.execute()
# 具體執(zhí)行類
class Receiver(object):
  def action(self):
    print "執(zhí)行請(qǐng)求"
if __name__ == "__main__":
  r = Receiver() #創(chuàng)建需要執(zhí)行的命令
  c = ConcreteCommand(r) # 綁定要執(zhí)行的命令
  i = Invoker() # 創(chuàng)建命令執(zhí)行者
  i.setcommand(c) # 接受命令
  i.excutecommand() # 執(zhí)行命令

上面類的設(shè)計(jì)如下圖:

優(yōu)點(diǎn):

可以較容易的設(shè)計(jì)一個(gè)命令隊(duì)列

可以較容易的將命令記入日志

允許接收請(qǐng)求的一方?jīng)Q定是否要否決請(qǐng)求

可以容易的實(shí)現(xiàn)對(duì)請(qǐng)求的撤銷和重做

加進(jìn)新的具體命令類不影響其他的類,因此增加新的具體命令類很容易

命令模式最大的優(yōu)點(diǎn)是 把請(qǐng)求一個(gè)操作的對(duì)象與知道怎么執(zhí)行一個(gè)操作的對(duì)象分割開

更多關(guān)于Python相關(guān)內(nèi)容可查看本站專題:《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python Socket編程技巧總結(jié)》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》及《Python入門與進(jìn)階經(jīng)典教程

希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • Python?讀取?.gz?文件全過程

    Python?讀取?.gz?文件全過程

    這篇文章主要介紹了Python?讀取?.gz?文件全過程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • python運(yùn)行或調(diào)用另一個(gè)py文件或參數(shù)方式

    python運(yùn)行或調(diào)用另一個(gè)py文件或參數(shù)方式

    這篇文章主要介紹了python運(yùn)行或調(diào)用另一個(gè)py文件或參數(shù)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • 深入解析NumPy中的Broadcasting廣播機(jī)制

    深入解析NumPy中的Broadcasting廣播機(jī)制

    在吳恩達(dá)老師的深度學(xué)習(xí)專項(xiàng)課程中,老師有提到NumPy中的廣播機(jī)制,同時(shí)那一周的測驗(yàn)也有涉及到廣播機(jī)制的題目。那么,到底什么是NumPy中的廣播機(jī)制?本文就來介紹一下
    2021-05-05
  • Python中的對(duì)象,方法,類,實(shí)例,函數(shù)用法分析

    Python中的對(duì)象,方法,類,實(shí)例,函數(shù)用法分析

    這篇文章主要介紹了Python中的對(duì)象,方法,類,實(shí)例,函數(shù)用法,從面向?qū)ο蟮慕嵌确治隽藢?duì)象,方法,類,實(shí)例,函數(shù)等的使用技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-01-01
  • Python中Playwright的常用操作方法分享

    Python中Playwright的常用操作方法分享

    本文詳細(xì)介紹了Playwright的常用操作方法,包括獲取頁面元素、點(diǎn)擊按鈕和鏈接等。這些方法可以幫助開發(fā)者更加高效地進(jìn)行自動(dòng)化測試和爬蟲開發(fā),需要的可以參考一下
    2023-05-05
  • 關(guān)于ZeroMQ 三種模式python3實(shí)現(xiàn)方式

    關(guān)于ZeroMQ 三種模式python3實(shí)現(xiàn)方式

    今天小編就為大家分享一篇關(guān)于ZeroMQ 三種模式python3實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • Python內(nèi)存優(yōu)化的七種技巧分享

    Python內(nèi)存優(yōu)化的七種技巧分享

    本文將重點(diǎn)介紹 Python 的內(nèi)置機(jī)制,并介紹 7 種原始但有效的內(nèi)存優(yōu)化技巧,掌握這些技巧將大大提高你的 Python 編程能力,文中通過代碼示例給大家講解的非常詳細(xì),感興趣的小伙伴跟著小編一起來學(xué)習(xí)吧
    2024-02-02
  • python中apply函數(shù)詳情

    python中apply函數(shù)詳情

    這篇文章主要介紹了python中apply函數(shù)詳情,該函數(shù)最有用的是第一個(gè)參數(shù),這個(gè)參數(shù)是函數(shù),相當(dāng)于C/C++的函數(shù)指針,更多詳細(xì)內(nèi)容,需要的小伙伴可以參考下面文章內(nèi)容
    2022-01-01
  • Python開發(fā)桌面小程序功能

    Python開發(fā)桌面小程序功能

    這篇文章主要介紹了Python開發(fā)一個(gè)桌面小程序功能,開發(fā)環(huán)境界面設(shè)置,功能介紹結(jié)合示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-04-04
  • Python制作豆瓣圖片的爬蟲

    Python制作豆瓣圖片的爬蟲

    本文給大家分享的是作者制作的爬取豆瓣首頁圖片的爬蟲代碼,代碼很簡單,大家可以參考下思路,希望可以幫到大家
    2017-12-12

最新評(píng)論

石狮市| 马关县| 晴隆县| 屏山县| 历史| 方正县| 江山市| 渝中区| 卫辉市| 漳州市| 盐山县| 漠河县| 外汇| 灵武市| 永川市| 太保市| 桂平市| 亚东县| 庆元县| 鄂托克前旗| 依兰县| 蒙自县| 通化县| 沂水县| 天津市| 宁明县| 白朗县| 南开区| 呼玛县| 林周县| 屏东县| 台北市| 神池县| 商都县| 诸城市| 酒泉市| 渝中区| 甘孜县| 黎平县| 娱乐| 黄龙县|