欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python設(shè)計模式之代理模式實例詳解

 更新時間:2019年01月19日 08:38:23   作者:Andy冉明  
這篇文章主要介紹了Python設(shè)計模式之代理模式,結(jié)合實例形式較為詳細(xì)的分析了代理模式的概念、原理及Python定義、使用代理模式相關(guān)操作技巧,需要的朋友可以參考下

本文實例講述了Python設(shè)計模式之代理模式。分享給大家供大家參考,具體如下:

代理模式(Proxy Pattern):為其他對象提供一種代理以控制對這個對象的訪問

#!/usr/bin/env python
# -*- coding:utf-8 -*-
__author__ = 'Andy'
"""
大話設(shè)計模式
設(shè)計模式——代理模式
代理模式(Proxy Pattern):為其他對象提供一種代理以控制對這個對象的訪問
實現(xiàn):戴勵 替 卓賈易 送禮物給 嬌嬌
模型:
#公共接口類
class InterFace:
  def request(self):
    pass
#真實類
class RealSubject(InterFace):
  def request(self):
    print 'RealSubject request'
#代理類 調(diào)用真實類的內(nèi)部方法
class ProxySubject(InterFace)
  def request(self):
    self.real = RealSubject()
    self.real.request()
"""
# 送禮物接口
class GiveGift(object):
  # 送洋娃娃
  def GiveDolls(self):
    pass
  # 送花
  def GiveFlowers(self):
    pass
  # 送巧克力
  def GiveChocolate(self):
    pass
# 被追求者類
class SchoolGirl(object):
  def __init__(self, name):
    self.name = name
# 追求者類
class Pursuit(GiveGift):
  def __init__(self, Girl):
    self.Girl = Girl
  def GiveDolls(self):
    print self.Girl.name, '送你洋娃娃'
  def GiveFlowers(self):
    print self.Girl.name, '送你花'
  def GiveChocolate(self):
    print self.Girl.name, '送你巧克力'
# 代理類
class Proxy(GiveGift):
  def __init__(self, Girl):
    self.proxy = Pursuit(Girl)
  # 送洋娃娃
  def GiveDolls(self):
    self.proxy.GiveDolls()
  # 送花
  def GiveFlowers(self):
    self.proxy.GiveFlowers()
  # 送巧克力
  def GiveChocolate(self):
    self.proxy.GiveChocolate()
if __name__ == '__main__':
  jiaojiao = SchoolGirl('jiaojiao')
  daili = Proxy(jiaojiao)
  daili.GiveDolls()
  daili.GiveFlowers()
  daili.GiveChocolate()

運行結(jié)果:

jiaojiao 送你洋娃娃
jiaojiao 送你花
jiaojiao 送你巧克力

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

代理類Proxy引用代理的實體Pursite,提供與Pursite相同的接口來代替實體

更多關(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)典教程

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

相關(guān)文章

  • 在Tensorflow中實現(xiàn)梯度下降法更新參數(shù)值

    在Tensorflow中實現(xiàn)梯度下降法更新參數(shù)值

    今天小編就為大家分享一篇在Tensorflow中實現(xiàn)梯度下降法更新參數(shù)值,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-01-01
  • Python實現(xiàn)單例模式的5種方法

    Python實現(xiàn)單例模式的5種方法

    單例模式應(yīng)該是應(yīng)用最廣泛,實現(xiàn)最簡單的一種創(chuàng)建型模式。本文詳細(xì)的介紹了Python實現(xiàn)單例模式的5種方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-06-06
  • python 怎樣進(jìn)行內(nèi)存管理

    python 怎樣進(jìn)行內(nèi)存管理

    這篇文章主要介紹了python 是如何進(jìn)行內(nèi)存管理的,幫助大家更好的理解和學(xué)習(xí)python,感興趣的朋友可以了解下
    2020-11-11
  • 基于python實現(xiàn)Pycharm斷點調(diào)試

    基于python實現(xiàn)Pycharm斷點調(diào)試

    這篇文章主要介紹了基于python實現(xiàn)Pycharm斷點調(diào)試,在我們寫程序的時候,很容易遇到各種各樣的bug,然后編譯器提示程序出錯的地方。很多時候可以通過提示的信息修改程序,但是有時我們想得到更多的信息,這個時候就需要進(jìn)行斷點調(diào)試,下面我們就一起來學(xué)習(xí)ycharm斷點調(diào)試
    2022-02-02
  • 關(guān)于Numpy生成數(shù)總結(jié)(隨機(jī)整數(shù)randint,固定步長arange,分布)

    關(guān)于Numpy生成數(shù)總結(jié)(隨機(jī)整數(shù)randint,固定步長arange,分布)

    這篇文章主要介紹了關(guān)于Numpy生成數(shù)總結(jié)(隨機(jī)整數(shù)randint,固定步長arange,分布),具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • python挖礦算力測試程序詳解

    python挖礦算力測試程序詳解

    這篇文章主要介紹了python挖礦算力測試程序詳解的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-07-07
  • python實現(xiàn)的多任務(wù)版udp聊天器功能案例

    python實現(xiàn)的多任務(wù)版udp聊天器功能案例

    這篇文章主要介紹了python實現(xiàn)的多任務(wù)版udp聊天器功能,結(jié)合具體案例形式分析了Python基于udp的聊天器功能相關(guān)實現(xiàn)與使用技巧,需要的朋友可以參考下
    2019-11-11
  • 如何查看python中安裝庫的文件位置

    如何查看python中安裝庫的文件位置

    這篇文章主要介紹了查看python中安裝庫的文件位置的方法,python自帶標(biāo)準(zhǔn)庫位置在安裝環(huán)境的lib文件夾下的.py文件都是,在環(huán)境的lib文件夾中,本文給大家詳細(xì)講解需要的朋友可以參考下
    2022-11-11
  • python常用庫之NumPy和sklearn入門

    python常用庫之NumPy和sklearn入門

    這篇文章主要介紹了python常用庫之NumPy和sklearn入門,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • Python從文件中讀取指定的行以及在文件指定位置寫入

    Python從文件中讀取指定的行以及在文件指定位置寫入

    這篇文章主要給大家介紹了關(guān)于Python從文件中讀取指定的行及在文件中指定位置寫入的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用Python具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09

最新評論