设计模式系列-工厂模式
工厂模式,是创建型设计模式,提供了一种创建对象的方式。这种设计模式的主要目的是对客户端不暴露创建逻辑,并通过统一的接口指向新创建的对象。 简单工厂模式 class Book(object): @abstractmethod def publish(self): pass class TechnicalBooks(Book): def publish(...
工厂模式,是创建型设计模式,提供了一种创建对象的方式。这种设计模式的主要目的是对客户端不暴露创建逻辑,并通过统一的接口指向新创建的对象。 简单工厂模式 class Book(object): @abstractmethod def publish(self): pass class TechnicalBooks(Book): def publish(...
基础知识-关于函数 在python中,函数可以作为变量传递给另一个函数,还可以在函数之内嵌套,如: # 首先定义一个普通的函数 def print_text(name): return 'hello,'+ name # 再定义一个嵌套函数,分别以函数和普通的字符串作为参数 def add_tag(func): def prt_func(name): retur...
顾名思义,单例模式(Singleton Pattern)就是保证一个类有且仅有一个实例,并且提供了一个全局的访问点。这就要求我们绕过常规的构造器,提供一种机制来保证一个类只有一个实例,客户程序在调用某一个类时,它是不会考虑这个类是否只能有一个实例等问题的,所以,这应该是类设计者的责任,而不是类使用者的责任。 举例:一个应用程序的日志,应用程序的多处都要调用日志进行记录,因此保证类只有一个实...
Byte Pair Encoding 算法流程: 设定最大subwords个数 将所有单词拆分为单个字符,并在最后添加一个停止符 </w>,同时标记出该单词出现的次数。例如,”low” 这个单词出现了 5 次,那么它将会被处理为 {‘l o w </w>’: 5} 统计每一个连续字节对的出现频率,选择最高频者合并成新的 subword, 如统计出来 l ...
Iterator和Generator理解python迭代不可或缺的一环, 就像打球中要掌握正确的挥拍角度和姿势才能建立起正确的肌肉记忆(当然,Iterator并没有那么重要,只是一种夸张的说法) Iterable和Iterator 如果一个对象是Iterable的,那么它是可以被使用者迭代的。如果一个对象是一个Iterator,那么使用者可以用它来迭代另一个对象(一个Iterable的对象)...
打球要从基本功开始练起,更何况是荒废了多年的野球手,在基本功的支撑下才能不断向上挑战 Python中的package与module 什么是package, 什么是module? 含有一个__init__.py文件的文件夹,认为是一个package 每个.py文件都被认为是一个module。 init.py文件的作用 在使用import导入某个package时,会自动执行__init__.py...
YesLiu’s Blog 我很喜欢汤浅政明的动画《乒乓》,以其中主角Peko的经历,作为自己博客的主题。 欢迎来到我的博客,我是一名野球手,在广阔的互联网世界里与人切磋,提高球技 自我介绍 野球打多了,是会把自己打废了的 我曾经是一名野球手,我喜欢取胜的快感 我从来没想过会有人比我厉害,闭上眼睛挥舞球拍,球也会自己跑过来 我能在天上飞,能轻松摸到月亮再回来 我根本不知道什么叫奇迹 ...