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

Python設(shè)計模式創(chuàng)建型原型模式

 更新時間:2022年02月16日 08:45:36   作者:范桂颶  
這篇文章主要介紹了Python原型模式,原型模式即Prototype?Pattern,指用原型實例指定創(chuàng)建對象的種類,并且通過拷貝這些原型創(chuàng)建新的對象,下面我們就來看具體的介紹內(nèi)容吧,希望對你的學(xué)習(xí)有所幫助

一、原型模式

原型是相對于復(fù)制、克隆而言的,但是不同于模板,模板創(chuàng)造出的東西是一模一樣,而原型創(chuàng)造出的東西是允許存在差異化和個性化的。

原型模式的實現(xiàn)思路是:“深拷貝” 和 “屬性更新”。定義一個原型,設(shè)計一個拷貝接口,不需要頻繁實例化類,只需要拷貝。

優(yōu)點:

  • 減少因為對象實例化而產(chǎn)生的損耗,并實行動態(tài)裝載。

二、應(yīng)用場景

三、代碼示例

要實現(xiàn)多個人的自我介紹,一般方法是每個人都創(chuàng)建一個對象,但是使用原型模式之后,只需要實例化一個對象(標(biāo)準(zhǔn)人),后面的人都已這個標(biāo)準(zhǔn)人為基礎(chǔ)來實現(xiàn)個性化。

import copy


class Information:
? ? """個人信息"""

? ? def __init__(self):
? ? ? ? self.name = None
? ? ? ? self.ager = None
? ? ? ? self.height = None

? ? def run(self):
? ? ? ? """
? ? ? ? 自我介紹方法
? ? ? ? :return:
? ? ? ? """
? ? ? ? print("我叫{}: 年齡:{} 身高:{}".format(self.name, self.ager, self.height))


class Prototype:
? ? def __init__(self, obj):
? ? ? ? self.copy_object = obj()

? ? def clone(self, **attr):
? ? ? ? obj = copy.deepcopy(self.copy_object)
? ? ? ? obj.__dict__.update(attr)
? ? ? ? return obj


if __name__ == '__main__':
? ? test = Prototype(Information)
? ? a = test.clone(name='張山', ager="30", height='170cm')
? ? a.run()
? ? b = test.clone(name='李飛', ager="20", height='190cm')
? ? b.run()

到此這篇關(guān)于Python設(shè)計模式創(chuàng)建型原型模式的文章就介紹到這了,更多相關(guān)Python原型模式內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 使用python庫xlsxwriter庫來輸出各種xlsx文件的示例

    使用python庫xlsxwriter庫來輸出各種xlsx文件的示例

    這篇文章主要介紹了使用python庫xlsxwriter庫來輸出各種xlsx文件的示例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • Python實現(xiàn)合并兩個有序鏈表的方法示例

    Python實現(xiàn)合并兩個有序鏈表的方法示例

    這篇文章主要介紹了Python實現(xiàn)合并兩個有序鏈表的方法,涉及Python操作鏈表節(jié)點的遍歷、判斷、添加等相關(guān)操作技巧,需要的朋友可以參考下
    2019-01-01
  • openstack中的rpc遠程調(diào)用的方法

    openstack中的rpc遠程調(diào)用的方法

    今天通過本文給大家分享openstack中的rpc遠程調(diào)用的方法,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2021-07-07
  • Python繪制分類圖的方法

    Python繪制分類圖的方法

    這篇文章主要為大家詳細介紹了Python繪制分類圖的方法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-04-04
  • python 去除txt文本中的空格、數(shù)字、特定字母等方法

    python 去除txt文本中的空格、數(shù)字、特定字母等方法

    今天小編就為大家分享一篇python 去除txt文本中的空格、數(shù)字、特定字母等方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-07-07
  • 使用python對excle和json互相轉(zhuǎn)換的示例

    使用python對excle和json互相轉(zhuǎn)換的示例

    今天小編就為大家分享一篇使用python對excle和json互相轉(zhuǎn)換的示例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-10-10
  • python面向?qū)ο蟀鎸W(xué)生信息管理系統(tǒng)

    python面向?qū)ο蟀鎸W(xué)生信息管理系統(tǒng)

    這篇文章主要為大家詳細介紹了python面向?qū)ο蟀鎸W(xué)生信息管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-06-06
  • Django 序列化的具體使用

    Django 序列化的具體使用

    django rest framework 中的序列化組件,本文主要介紹了Django 序列化的具體使用,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • python3實現(xiàn)從kafka獲取數(shù)據(jù),并解析為json格式,寫入到mysql中

    python3實現(xiàn)從kafka獲取數(shù)據(jù),并解析為json格式,寫入到mysql中

    今天小編就為大家分享一篇python3實現(xiàn)從kafka獲取數(shù)據(jù),并解析為json格式,寫入到mysql中,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • Python詞云展示庫wordcloud配置詳解

    Python詞云展示庫wordcloud配置詳解

    這篇文章主要介紹了Python詞云展示庫wordcloud配置詳解,詞云就是將詞語通過圖形可視化的方式,直觀和藝術(shù)的展示出來,詞云在我們的生活中經(jīng)常能夠看到,無論是中文的詞云還是英文的詞云,需要的朋友可以參考下
    2023-07-07

最新評論

积石山| 邢台市| 雅安市| 拜泉县| 漯河市| 阆中市| 临桂县| 桂平市| 大悟县| 阳信县| 建宁县| 永泰县| 桐庐县| 靖江市| 平和县| 松桃| 方山县| 平山县| 翁源县| 福州市| 宁晋县| 周宁县| 留坝县| 沙雅县| 杨浦区| 开阳县| 石楼县| 莱西市| 定兴县| 南陵县| 关岭| 丽水市| 涟源市| 天水市| 上蔡县| 遵义市| 若羌县| 丽水市| 高密市| 漳州市| 武义县|