jhljx Blog

Looking at the stars with your feet on the ground

设计模式读书笔记(五)

"Head First 设计模式第六章"

目录 1. 命令模式 命令模式 我们将封装带入到一个全新的境界:把方法调用(Method Invocation)封装起来。 命令模式可以将“动作的请求者”从“动作的执行者”对象中解耦。 利用命令对象,把请求(例如打开电灯)封装成一个特定对象(例如客厅电灯对象)。所以,如果对每个按钮都存储一个命令对象,那么当按钮被按下时,就可以请命令对象做相关的工作。遥控器并不需要知道...

设计模式读书笔记(四)

"Head First 设计模式第五章"

目录 1. 单件模式 单件模式 常用单件模式的实例: 比如,线程池(threadpool),缓存(cache),对话框,处理偏好设置和注册表(registry)的对象。 单件模式的实例常用来管理共享的资源,比如数据库连接或线程池。 单件模式的定义 单件模式确保一个类只有一个实例,并提供一个全局访问点。 利用延迟实例化的方式创建单件,这种做法对资源敏感的对象特别重...

设计模式读书笔记(三)

"Head First 设计模式第四章"

目录 1. 工厂模式 工厂模式 在设计模式中,所谓的“实现一个接口”并不一定表示“写一个类,并利用implements关键字来实现某个Java接口”。“实现一个接口”泛指“实现某个超类型(可以是类或接口)的某个方法”。 工厂方法用来处理对象的创建,并将这样的行为封装在子类中。这样,客户程序中关于超类的代码就和子类对象创建代码解耦了。 工厂方法模式: 工厂方法模式定义了...

设计模式读书笔记(二)

"Head First 设计模式第三章"

目录 1. 装饰者模式 装饰者模式 设计原则 类应该扩展开放,对修改关闭。 我们的目标是允许类容易扩展,在不修改现有代码的情况下,就可搭配新的行为。如能实现这样的目标,有什么好处呢?这样的设计具有弹性可以应对改变,可以接受新的功能来应对改变的需求。 这个原则虽然看着似乎有点矛盾,但的确有一些技术可以允许在不直接修改代码的情况下对其进行扩展。 在选择需要被扩展的代码部...

Pandas学习笔记(二)

"Pandas学习笔记"

目录 1. Python2向文件中写入Unicode字符 pandas df[‘petal area’] = df.apply(lambda r: r[‘petal length’] * r[‘petal width’], axis=1) # axis=1表示对列进行操作,axis=0表示对行进行操作 对数据框中每个数据单元执行一个函数: df.applymap(lam...

Matplotlib学习笔记(一)

"Matplotlib学习笔记"

目录 1. Pandas读取CSV 2. Pandas写入CSV matplotlib画图无法显示中文 from pylab import * mpl.rcParams[‘font.sans-serif’] = [‘SimHei’] 注意下面画图的方法 import matplolib.pyplot as plt fig = plt.figure() ax = fig.a...

Sklearn学习笔记

"Sklearn学习笔记"

目录 1. Python2向文件中写入Unicode字符 一个库statsmodels import statsmodels.api as sm y = df[‘sepal length’][:50] x = df[‘sepal width’][:50] X = sm.add_constant(x) results = sm.OLS(y, X).fit() print...

Numpy学习笔记(一)

"Numpy学习笔记"

目录 1. Pandas读取CSV 2. Pandas写入CSV import numpy as np >>> import numpy as np >>> group = np.array([[1, 1.1], [1,1], [0,0], [0,0.1]]) >>> group array([[ 1. , 1.1],...

Pandas学习笔记(一)

"Pandas学习笔记"

目录 1. Pandas读取CSV 2. Pandas写入CSV Pandas读取CSV文件 pd.read_csv(filepath_or_buffer, sep=’,’, delimiter=None, header=’infer’, names=None, index_col=None, usecols=None, squeeze=False, prefix=None...

Python语言学习笔记(六)

"Python学习笔记"

目录 1. Python2向文件中写入Unicode字符 numpy中eye和identity的区别 两个函数的原型为: np.identity(n, dtype=None) np.eye(N, M=None, k=0, dtype=<type ‘float’>); np.identity只能创建方形矩阵 np.eye可以创建矩形矩阵,且k值可以调节,为1的对...