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

Python設(shè)計模式之抽象工廠模式

 更新時間:2016年08月25日 11:09:44   作者:WuLex  
這篇文章主要為大家詳細介紹了Python設(shè)計模式之抽象工廠模式,感興趣的小伙伴們可以參考一下

python面向?qū)ο缶幊倘腴T,我們需要不斷學習進步

"""抽象工廠模式的實現(xiàn)"""

import random


class PetShop:

  """寵物商店"""

  def __init__(self, animal_factory=None):

    """寵物工廠是我們的抽象工廠。我們可以隨意設(shè)置。""" 
    self.pet_factory = animal_factory

  def show_pet(self):

    """使用抽象工廠創(chuàng)建并顯示一個寵物"""

    pet = self.pet_factory.get_pet()
    print("我們有一個可愛的 {}".format(pet))
    print("它說 {}".format(pet.speak()))
    print("我們還有 {}".format(self.pet_factory.get_food()))


# 工廠生產(chǎn)的事物

class Dog:

  def speak(self):
    return "汪"

  def __str__(self):
    return "Dog"


class Cat:

  def speak(self):
    return "喵"

  def __str__(self):
    return "Cat"


# Factory classes

class DogFactory:

  def get_pet(self):
    return Dog()

  def get_food(self):
    return "狗食"


class CatFactory:

  def get_pet(self):
    return Cat()

  def get_food(self):
    return "貓糧"


# 隨機創(chuàng)建合適的工廠
def get_factory():
  """讓我們動起來!"""
  return random.choice([DogFactory, CatFactory])()


# 多個工廠顯示寵物
if __name__ == "__main__":
  for i in range(4):
    shop = PetShop(get_factory())
    shop.show_pet()
    print("=" * 20)

結(jié)果如圖:

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • SpringBoot中的@MessageMapping注解詳解

    SpringBoot中的@MessageMapping注解詳解

    這篇文章主要介紹了SpringBoot中的@MessageMapping注解詳解,Spring Boot 提供了對 WebSocket 的支持,其中 @MessageMapping 注解是一個常用的注解,它可以將一個 Java 方法標記為 WebSocket 的消息處理器,需要的朋友可以參考下
    2023-08-08
  • python 模擬貸款卡號生成規(guī)則過程解析

    python 模擬貸款卡號生成規(guī)則過程解析

    這篇文章主要介紹了python 模擬貸款卡號生成規(guī)則過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-08-08
  • python中g(shù)etaddrinfo()基本用法實例分析

    python中g(shù)etaddrinfo()基本用法實例分析

    這篇文章主要介紹了python中g(shù)etaddrinfo()基本用法,實例分析了Python中使用getaddrinfo方法進行IP地址解析的基本技巧,需要的朋友可以參考下
    2015-06-06
  • Python解方程組 scipy.optimize.fsolve()函數(shù)如何求解帶有循環(huán)求和的方程式

    Python解方程組 scipy.optimize.fsolve()函數(shù)如何求解帶有循環(huán)求和的方程式

    這篇文章主要介紹了Python解方程組 scipy.optimize.fsolve()函數(shù)如何求解帶有循環(huán)求和的方程式,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-06-06
  • flask中使用藍圖將路由分開寫在不同文件實例解析

    flask中使用藍圖將路由分開寫在不同文件實例解析

    這篇文章主要介紹了flask中使用藍圖將路由分開寫在不同文件實例解析,具有一定借鑒價值,需要的朋友可以參考下
    2018-01-01
  • Python中不同圖表的數(shù)據(jù)可視化的實現(xiàn)

    Python中不同圖表的數(shù)據(jù)可視化的實現(xiàn)

    數(shù)據(jù)可視化是以圖形格式呈現(xiàn)數(shù)據(jù)。它通過以簡單易懂的格式匯總和呈現(xiàn)大量數(shù)據(jù),幫助人們理解數(shù)據(jù)的重要性,并有助于清晰有效地傳達信息。本文為大家準備了Python實現(xiàn)不同圖表數(shù)據(jù)可視化的代碼,需要的可以參考一下
    2022-08-08
  • Python使用wxpy模塊實現(xiàn)微信兩兩群組消息同步功能(推薦)

    Python使用wxpy模塊實現(xiàn)微信兩兩群組消息同步功能(推薦)

    這篇文章主要介紹了Python使用wxpy模塊實現(xiàn)微信兩兩群組消息同步,本文通過示例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-06-06
  • Python三級菜單的實例

    Python三級菜單的實例

    下面小編就為大家?guī)硪黄狿ython三級菜單的實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09
  • python計算Content-MD5并獲取文件的Content-MD5值方式

    python計算Content-MD5并獲取文件的Content-MD5值方式

    這篇文章主要介紹了python計算Content-MD5并獲取文件的Content-MD5值方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • 使用python模擬命令行終端的示例

    使用python模擬命令行終端的示例

    今天小編就為大家分享一篇使用python模擬命令行終端的示例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-08-08

最新評論

四会市| 互助| 鲁甸县| 五原县| 莎车县| 清徐县| 朝阳县| 洪泽县| 泰兴市| 乌拉特前旗| 合江县| 寿宁县| 郎溪县| 彭泽县| 米泉市| 新丰县| 繁峙县| 鄂尔多斯市| 临泽县| 香格里拉县| 米易县| 铁岭县| 平武县| 黄浦区| 湾仔区| 天台县| 宁南县| 新沂市| 潼南县| 大丰市| 永善县| 通河县| 台前县| 改则县| 辉南县| 汶上县| 田林县| 嘉禾县| 广南县| 锦屏县| 怀仁县|