当前位置: 首页 > news >正文

国内外网站建设比较wordpress数据库结构

国内外网站建设比较,wordpress数据库结构,Wordpress页面怎么使用,黄骅港房价多少钱一平先看代码: # 导入未来模块以支持类型注解 from __future__ import annotations# 导入抽象基类模块和随机数生成器 from abc import ABC, abstractmethod from random import randrange# 导入列表类型注解 from typing import List# 定义观察者模式中的主体接口&…

先看代码:

# 导入未来模块以支持类型注解
from __future__ import annotations# 导入抽象基类模块和随机数生成器
from abc import ABC, abstractmethod
from random import randrange# 导入列表类型注解
from typing import List# 定义观察者模式中的主体接口(Subject)
class Subject(ABC):"""主体接口声明一组用于管理订阅者的方法。"""@abstractmethoddef attach(self, observer: Observer) -> None:"""将观察者附加到主体。"""pass@abstractmethoddef detach(self, observer: Observer) -> None:"""从主体中移除观察者。"""pass@abstractmethoddef notify(self) -> None:"""通知所有观察者有关事件的信息。"""pass# 定义具体主体类(ConcreteSubject)
class ConcreteSubject(Subject):"""具体主体拥有对所有订阅者至关重要的状态,并在状态变化时通知观察者。"""_state: int = None"""为了简化起见,主体的状态(对所有订阅者至关重要)存储在此变量中。"""_observers: List[Observer] = []"""订阅者列表。在实际应用中,订阅者列表可以更全面地存储(按事件类型分类等)。"""def attach(self, observer: Observer) -> None:print("主体:已附加一个观察者。")self._observers.append(observer)def detach(self, observer: Observer) -> None:self._observers.remove(observer)"""订阅管理方法。"""def notify(self) -> None:"""触发每个订阅者的更新。"""print("主体:正在通知观察者...")for observer in self._observers:observer.update(self)def some_business_logic(self) -> None:"""通常,订阅逻辑只是主体所能做的工作的一部分。主体通常包含一些重要的业务逻辑,当即将发生(或已经发生)重要事情时触发通知方法。"""print("\n主体:我正在做一些重要的事情。")self._state = randrange(0, 10)print(f"主体:我的状态刚刚变更为:{self._state}")self.notify()# 定义观察者接口(Observer)
class Observer(ABC):"""观察者接口声明由主体使用的update方法。"""@abstractmethoddef update(self, subject: Subject) -> None:"""接收主体的更新。"""pass# 定义具体观察者类(ConcreteObserverA 和 ConcreteObserverB)
"""
具体观察者对它们所附属的主体发出的更新做出反应。
"""class ConcreteObserverA(Observer):def update(self, subject: Subject) -> None:if subject._state < 3:print("具体观察者A:对事件作出反应")class ConcreteObserverB(Observer):def update(self, subject: Subject) -> None:if subject._state == 0 or subject._state >= 2:print("具体观察者B:对事件作出反应")# 客户端代码
if __name__ == "__main__":subject = ConcreteSubject()observer_a = ConcreteObserverA()subject.attach(observer_a)observer_b = ConcreteObserverB()subject.attach(observer_b)subject.some_business_logic()subject.some_business_logic()subject.detach(observer_a)subject.some_business_logic()

输出

Subject: Attached an observer.
Subject: Attached an observer.Subject: I'm doing something important.
Subject: My state has just changed to: 0
Subject: Notifying observers...
ConcreteObserverA: Reacted to the event
ConcreteObserverB: Reacted to the eventSubject: I'm doing something important.
Subject: My state has just changed to: 5
Subject: Notifying observers...
ConcreteObserverB: Reacted to the eventSubject: I'm doing something important.
Subject: My state has just changed to: 0
Subject: Notifying observers...
ConcreteObserverB: Reacted to the event

在这里插入图片描述
参考:
参考

http://www.yayakq.cn/news/53062/

相关文章:

  • 福建网站开发池州专业网站建设
  • 母婴用品网站模板外贸营销网站建设公司
  • seo网站营销公司哪家好福建网站开发企业
  • 宁波网站建设企业网站制作体现网站特色
  • 郑州网站建设亅汉狮网络自己怎么优化网站排名
  • 展示用网站模板wordpress媒体库增加分类
  • 网站报纸什么软件做爱链工具
  • 中山那些网站公司网站前端设计外包公司
  • 建设网站构成织梦网站首页打开慢
  • 新手自己建网站广州市企业网站建设平台
  • 做门头上那个网站申报大连建设工程网站
  • 网站首页轮播图片素材广告公司常用软件
  • 网站开发适配女人和男人做爰网站
  • 阿里云机器怎么做网站广州网站建设 推广公司
  • 网站建设相关岗位名称关键字搜索引擎
  • 网站注册平台怎么注册公司网站如何做水印
  • 四川住房城乡建设厅网站首页一台vps两个wordpress网站
  • 广州住房和城乡建设局网站宜兴市城乡建设局网站
  • jsp编写网站图像处理专业网站
  • 万网搭建淘宝客网站找网站建设
  • 服装印花图案网站大型网站技术方案
  • 网站更新文章猫猫 wordpress
  • 凯里网站建设如何收费幸运28网站建设
  • 企业做网站的步骤与做网站注意事项做网站泊头
  • 百度做营销网站多少钱网站优化外包服务
  • 公司品牌网站建设价格免费安全网站大全入口
  • 荆门建设局官方网站北京网站优化推广收集
  • 微信做购物网站抽多少佣中海外城市建设有限公司网站
  • 中国工程建设领域网站成立网站
  • 义乌网站建设优化推广做网站贷款