三个角色:环境(Context)角色:持有一个Strategy类的引用。抽象策略(Strategy)角色:通常由一个接口或者抽象类实现,此角色给出所有的具体策略类所需的接口。具体策略(ConcreteStrategy)角色:包装相关算法和行为为了帮助理解,我们举例来说明。我们的程序要实现加密功能。加密有一个加密算法,加密算法有很多种,比如MD5,DES等,我们的程序需要实现这个功能,就是可以让用户选择不同的加密算法进行加密。这个过程我们可以用Strateg
系统 2019-08-29 23:23:58 1931
平时做JAVA总是会遇到强制转换的时候,一般单个对象强制转换很方便,例如Bb=null;Aa=(A)b;但是,B[]b=null;A[]a=(A[])b却会导致异常发生,为了解决这个问题,我们不得不对数组中每个元素单独进行强制转换,for(inti=0;i
系统 2019-08-29 22:42:32 1931
上接《索引创建(2):DocumentWriter处理流程三》1.4索引数据池存储细节倒排索引(token->postinglist)表的数据信息在内存中并不是直接存储在postingsHash中的,而是存放在三大数据缓冲池中——CharBlockPool,ByteBlockPool,IntBlockPool。这三个池均都由若干个固定长度的buffer数组构成。DocumentsWriter对它们进行管理和维护(包括分配新的块或者回收不用的块的操作),以达
系统 2019-08-29 21:59:45 1931
ExampleUAR:Aspect1—DateLabelisGood,ItSpeakstheUsers'LanguageOneaspectofthisinterfaceisthatitpresentstheday'sdateinstraightforwardlanguagethatisfamiliartousers.We'llwriteaUARtodocumentthisgoodaspectoftheinterfaceandusethisfirstexam
系统 2019-08-29 21:57:59 1931
前言在Python中可迭代(Iterable)、迭代器(Iterator)和生成器(Generator)这几个概念是经常用到的,初学时对这几个概念也是经常混淆,现在是时候把这几个概念搞清楚了。0x00可迭代(Iterable)简单的说,一个对象(在Python里面一切都是对象)只要实现了只要实现了__iter__()方法,那么用isinstance()函数检查就是Iterable对象;例如classIterObj:def__iter__(self):#这里
系统 2019-09-27 17:56:54 1930
os模块描述:python标准库中的一个用于访问操作系统功能的模块。作用:用来实现跨平台访问常用操作:os.sep系统路径的分隔符>>>importos>>>os.sep'/'#windows上运行结果为:\\#windows上的pycharm运行结果为:\#Linux运行结果为:/os.linesep输出当前平台使用的行终止符>>>importos>>>os.linesep'\n'os.environ获取系统环境变量os.getcwd()获取当前工作路径
系统 2019-09-27 17:56:35 1930
Python入门之内置模块--sys模块1、sys模块sys模块是与python解释器交互的一个接口print(sys.path)#模块查找的顺序print(sys.argv)#命令行参数List,第一个元素是程序本身路径只能在终端执行print(sys.modules)#查看加载到内存的模块print(sys.platform)#查看当前操作系统平台mac-darwinwin-win32print(sys.version)#查看当前解释器的版本sys.e
系统 2019-09-27 17:56:06 1930
理论知识见:https://blog.csdn.net/zwqjoy/article/details/80431496https://sklearn.apachecn.org/docs/0.21.3/12.htmlBagging:importitertools#相当多的牛逼闪闪的数学算法importnumpyasnpimportmatplotlib.pyplotaspltimportmatplotlib.gridspecasgridspec#调整子图位置大
系统 2019-09-27 17:55:22 1930
Mac中python多版本切换管理step1.$sudovi~/.bashrcstep2.命令行中输入aliaspython2=’/…/Versions/2.x/bin/python2.x’aliaspython3=’/…/Versions/3.x/bin/python3.x’Step3.刷新$source~/.bashrcStep4、验证在终端输入python2即代表是Python2.x版本,输入python3即代表是Python3.x版本。Mac设置默
系统 2019-09-27 17:55:04 1930
准备在断网的和联网的机器安装pip,下载地址https://pypi.python.org/pypi/pip在联网的开发机器上安装好需要的包例如:pip3installparamikopip3installfabric打包已安装的包新建pyenv文件夹用来存储下载下来的所需安装包pip3list#查看安装的包#使用pip导出当前环境所有依赖包信息文件pip3freeze>requirements.txt#下载所有依赖包到本地pip3install-rreq
系统 2019-09-27 17:54:56 1930