Chapter · 第 156 页起
第8章 Python面向对象的程序设计
章节主张
第八章把代码组织从函数进一步推向类、模块和包,为后续更完整的策略工程做准备。
中文释读
不是每个量化初学者都要写复杂类层级,但理解类、模块和包,能帮助你读懂平台代码与成熟库结构。
这章真正给的是工程意识,而不是语法炫技。
本章知识路线
关键论据
- 面向对象有助于组织复杂状态。
- 模块和包帮助代码分层。
- 标准模块意识会直接提升开发效率。
行动清单
- 先会拆模块,再决定要不要建类。
- 理解 import 和标准模块。
- 把代码组织意识放进策略脚本。
本章图版学习路径
图版按知识点分组,用来把理论页、平台页和代码页重新接上。
源章节深读
以下卡片基于章节和小节起始页 OCR,并补上“问题、动作、提醒”三层解读。
8.1 面向对象
Python 量化交易实战入门与技巧 8.1 面向对象 Python 从设计之初就已经是一门面向对象的语言,所以在Python 中创 建一个类和对象是很容易的。 8.1.1 面向对象概念 面向对象概念主要有9个,具体如下: 1. 类(Class) 类(Class)用来描述具有相同的属性和方法的对象的集合。它定义了该集 合中每个对象所共有的属性和方法。对象是类的实例。 2. 类变量 类变量在整个实例化的对象中是公用的。类变量定义在类中且在函数体 之外。类变量通常不作为实例变量使用。 3. 数据成员 数据成员,即类变量或者实例变量,是用于处理类及其实例对象的相关 的数据。 4. 方法重写 如果从父类继承的方法不能满足子类的需求,可以对其进行改写,这个 过程称为方法的覆盖(override),也称为方法的重写。 5.实例变量 实例变量是定义在方法中的变量,只作用于当前实例的类。
8.2 模块
第8章 Python 面向对象的程序设计 用的是在括号中排在前面父类的方法,即 speaker 类中的speak()方法。 单击菜单栏中的“Run/Run Module” 命令或按下键盘上的“F5”,就 可以运行程序代码,结果如图8.4所示。
8.3 包
第8章 Python 面向对象的程序设计 print("没有压缩之前的长度和压缩之后的长度:",len (b'witch which has which witches wrist watch!'),len (21ib.compress (b'witch which has which witches wrist watch!'))) 单击菜单栏中的“Run/Run Module”命令或按下键盘上的“F5” ’,就 可以运行程序代码,结果如图8.9所示。
辨析题:为什么量化初学者也要懂模块和包?
因为后面大量策略、数据和库调用都建立在模块化结构上,不懂就只能机械复制代码。