目录
- Ⅰ Python基础
- 1. Python入门
- 2. 流程控制
- 3. Python函数使用
- 4. Python中的列表
- 5. 字典
- 6. Python中的字符串
- 7. 异常
- Ⅱ Python 进阶
- 3. 模块
- Ⅳ Python日常工具
- 4. 用 Python 处理电子表格
- 1. DOCX 文档解析与处理
- 2. 用Python进行图像处理
- 3. 使用Python处理PDF文档
- 4. Web信息解析与处理
- 5. Web信息生成与发布
- 6. 自动化Email处理
- Ⅴ 专题
- 1. Pillow图像处理
- 2. OpenCV处理
- 3. 数据库自动化报表处理:使用SQLite
- 4. Python和Web
- 5. Web信息处理
- 6. Web模板引擎
- 7. XML 处理
- Ⅵ 图像处理:使用scikit-image
- 1. skimage数字图像处理基础
- 2. skimage数字图像处理中级
- 3. skimage数字图像处理高级
- Ⅶ 科学计算
- 1. NumPy数值计算
- 2. SciPy科学类库
- 3. SymPy符号运算
- 4. Matplotlib绘图
- 5. Pandas 第一部分
- 6. Pandas 第二部分
- 6.1. Pandas排序
- 6.2. Pandas字符串和文本数据
- lower()函数示例
- upper()函数示例
- len()函数示例
- strip()函数示例
- split(pattern)函数示例
- cat(sep=pattern)函数示例
- get_dummies()函数示例
- contains()函数示例
- replace(a,b)函数示例
- repeat(value)函数示例
- count(pattern)函数示例
- startswith(pattern)函数示例
- endswith(pattern)函数示例
- find(pattern)函数示例
- findall(pattern)函数示例
- swapcase()函数示例
- islower()函数示例
- isupper()函数示例
- isnumeric()函数示例
- 6.3. Pandas选项和自定义
- 6.4. Pandas索引和选择数据
- 6.5. Pandas统计函数
- 6.6. Pandas窗口函数
- 6.7. Pandas聚合
- 6.8. Pandas缺失数据
- 6.9. Pandas分组(GroupBy)
- 6.10. Pandas合并/连接
- 6.11. Pandas级联
- 7. Pandas 第三部分
上一个主题
下一个主题
>>> from helper import info; info()
待更新
4.6. 小结¶
本章介绍的内容很多,下面来总结一下。
新式类和旧式类:Python类的工作方式在不断变化。较新的Python 2版本有两种类,其中 旧式类正在快速退出舞台。新式类是Python 2.2引入的,提供了一些额外的功能,如支持 函数super和property,而旧式类不支持。要创建新式类,必须直接或间接地继承object 或设置 metaclass 。
魔法方法:Python中有很多特殊方法,其名称以两个下划线开头和结尾。这些方法的功能 各不相同,但大都由Python在特定情况下自动调用。例如 init 是在对象创建后调用的。
构造函数:很多面向对象语言中都有构造函数,对于你自己编写的每个类,都可能需要 为它实现一个构造函数。构造函数名为 init ,在对象创建后被自动调用。
重写:类可重写其超类中定义的方法(以及其他任何属性),为此只需实现这些方法即可。 要调用被重写的版本,可直接通过超类调用未关联版本(旧式类),也可使用函数super 来调用(新式类)。
序列和映射:要创建自定义的序列或映射,必须实现序列和映射协议指定的所有方法, 其中包括 getitem 和 setitem 等魔法方法。通过从list(或UserList)和dict(或 UserDict)派生,可减少很多工作量。
迭代器:简单地说,迭代器是包含方法 next 的对象,可用于迭代一组值。没有更多的 值可供迭代时,方法 next 应引发StopIteration异常。可迭代对象包含方法 iter , 它返回一个像序列一样可用于for循环中的迭代器。通常,迭代器也是可迭代的,即包含 返回迭代器本身的方法 iter 。
生成器:生成器的函数是包含关键字yield的函数,它在被调用时返回一个生成器,即一 种特殊的迭代器。要与活动的生成器交互,可使用方法send、throw和close。
八皇后问题:八皇后问题是个著名的计算机科学问题,使用生成器可轻松地解决它。这 个问题要求在棋盘上放置8个皇后,并确保任何两个皇后都不能相互攻击。
本章介绍的新函数¶
函 数 |
描 述 |
---|---|
iter(obj) |
从可迭代对象创建一个迭代器 |
next(it) |
让迭代器前进一步并返回下一个元素 |
property(fget, fset, fdel, doc) |
返回一个特性;所有参数都是可选的 |
super(class, obj) |
返回一个超类的关联实例 |
调用iter和super时,还可提供这里没有列出的其他参数,更详细的信息请参阅标准Python 文档。