观察者模式的一个非常简单的实现

simpleobserver的Python项目详细描述


PyPIBuild StatusCoverage Status

观察者模式的简单实现。

importsimpleobserver# Create a subject and list the events it might firefoo=simpleobserver.Subject('bar','baz')# Add a listenerdeffoo_bar_listener(*args):print("heard 'bar'",args)foo('bar',foo_bar_listener)# fire eventsfoo.fire('bar',1,2,3)# -> heard 'bar' (1, 2, 3)# Trying to listen to an unregistered event throws an errorfoo('snorble',lambda:None)# -> AssertionError: snorble is not a valid event for this subject# Same with trying to fire an unregistered eventfoo.fire('snorble')# -> AssertionError: snorble is not a valid event for this subject

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
线程“main”java中的socket异常。网SocketException:在java上重置连接。木卫一。缓冲读取器。读线(未知源)   java原子参考   如何使用Java以编程方式确定两个XML文件(如XPATH)之间的差异?   java使用ApachePOI从存在于不同行中的两列中提取公共值   java在JavaFX中使用WebView会破坏Linux上的UI   Java中for循环中的If语句   Java中Hilberts空间填充曲线算法   由于出现错误,使用Reformation2下载的java文件停止工作   java是否可以通过编程方式控制setjaxbvalidationeventhandler?   没有Eclipse GUI的java Eclipse RCP应用程序   多线程在Java中使用线程安全集合时,处理并发问题的最佳方法是什么?   swing Java LWJGL和JOptionPane   java JPA:设置@JoinColumn(updateable=false)以避免OptimisticLockException   java GL VertexBuffer无效操作   java在Swing中实现后退/前进按钮   java在同一个JTable上创建两个表   类文件中的java不兼容魔术值1008813135   在Java中使用“@”的c#文字字符串?