摘要: 通常情况下,定义函数时都会选择有参数的函数形式,函数参数的作用是传递数据给函数,令其对接收的数据做具体的操作处理。在使用函数时,经常会用到形式参数(简称“形参”)和实际参数(简称“实参”),二者都叫参数,之间的区别是: 形式参数:在定义函数时,函数名后面括号中的参数就是形式参数,例如: #定义函数时 阅读全文
posted @ 2020-08-13 22:47 lincappu 阅读(906) 评论(0) 推荐(0) 编辑
摘要: 一些具有特殊含义的类,其实例化对象的个数往往是固定的,比如用一个类表示月份,则该类的实例对象最多有 12 个;再比如用一个类表示季节,则该类的实例化对象最多有 4 个。针对这种特殊的类,Python 3.4 中新增加了 Enum 枚举类。也就是说,对于这些实例化对象个数固定的类,可以用枚举类来定义。 阅读全文
posted @ 2020-08-13 22:42 lincappu 阅读(2232) 评论(0) 推荐(0) 编辑
摘要: 我们知道,type() 函数属于 Python 内置函数,通常用来查看某个变量的具体类型。其实,type() 函数还有一个更高级的用法,即创建一个自定义类型(也就是创建一个类)。type() 函数的语法格式有 2 种,分别如下: type(obj) type(name, bases, dict) 以 阅读全文
posted @ 2020-08-13 22:37 lincappu 阅读(442) 评论(0) 推荐(0) 编辑
摘要: 前面章节中,我们一直在用“类对象.属性”的方式访问类中定义的属性,其实这种做法是欠妥的,因为它破坏了类的封装原则。正常情况下,类包含的属性应该是隐藏的,只允许通过类提供的方法来间接实现对类属性的访问和操作。因此,在不破坏类封装原则的基础上,为了能够有效操作类中的属性,类中应包含读(或写)类属性的多个 阅读全文
posted @ 2020-08-13 21:02 lincappu 阅读(502) 评论(0) 推荐(0) 编辑
摘要: 用Python实现设计模式——工厂模式 python设计模式工厂模式 发布于 2018-01-30 前言 工厂模式,顾名思义就是我们可以通过一个指定的“工厂”获得需要的“产品”,在设计模式中主要用于抽象对象的创建过程,让用户可以指定自己想要的对象而不必关心对象的实例化过程。这样做的好处是用户只需通过 阅读全文
posted @ 2020-08-13 20:50 lincappu 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 除了使用 sys.exc_info() 方法获取更多的异常信息之外,还可以使用 traceback 模块,该模块可以用来查看异常的传播轨迹,追踪异常触发的源头。下面示例显示了如何显示异常传播轨迹: class SelfException(Exception): pass def main(): fi 阅读全文
posted @ 2020-08-13 19:47 lincappu 阅读(279) 评论(0) 推荐(0) 编辑
摘要: 在实际调试程序的过程中,有时只获得异常的类型是远远不够的,还需要借助更详细的异常信息才能解决问题。捕获异常时,有 2 种方式可获得更多的异常信息,分别是: 使用 sys 模块中的 exc_info 方法; 使用 traceback 模块中的相关函数。 本节首先介绍如何使用 sys 模块中的 exc_ 阅读全文
posted @ 2020-08-13 19:43 lincappu 阅读(544) 评论(0) 推荐(1) 编辑
摘要: tempfile 模块专门用于创建临时文件和临时目录,它既可以在 UNIX 平台上运行良好,也可以在 Windows 平台上运行良好。tempfile 模块中常用的函数,如表 1 所示。 表 1 tempfile 模块常用函数及功能 tempfile 模块函数功能描述 tempfile.Tempor 阅读全文
posted @ 2020-08-13 14:45 lincappu 阅读(1025) 评论(0) 推荐(0) 编辑
摘要: fnmatch 模块主要用于文件名称的匹配,其能力比简单的字符串匹配更强大,但比使用正则表达式相比稍弱。。如果在数据处理操作中,只需要使用简单的通配符就能完成文件名的匹配,则使用 fnmatch 模块是不错的选择。fnmatch 模块中,常用的函数及其功能如表 1 所示。 Python fnmatc 阅读全文
posted @ 2020-08-13 14:43 lincappu 阅读(472) 评论(0) 推荐(0) 编辑
摘要: 和前面章节中引入的模板不同,pathlib 模块中包含的是一些类,它们的继承关系如图 1 所示。 图 1 pathlib模块中类的组织结构 图 1 中,箭头连接的是有继承关系的两个类,以 PurePosixPath 和 PurePath 类为例,PurePosizPath 继承自 PurePath, 阅读全文
posted @ 2020-08-13 14:39 lincappu 阅读(809) 评论(0) 推荐(0) 编辑
摘要: 除了可以借助 fileinput 模块实现读取文件外,Python 还提供了 linecache 模块。和前者不同,linecache 模块擅长读取指定文件中的指定行。换句话说,如果我们想读取某个文件中指定行包含的数据,就可以使用 linecache 模块。值得一提的是,linecache 模块常用 阅读全文
posted @ 2020-08-13 14:15 lincappu 阅读(265) 评论(0) 推荐(0) 编辑
摘要: 前面章节中,我们学会了使用 open() 和 read()(或者 readline()、readlines() )组合,来读取单个文件中的数据。但在某些场景中,可能需要读取多个文件的数据,这种情况下,再使用这个组合,显然就不合适了。庆幸的是,Python 提供了 fileinput 模块,通过该模块 阅读全文
posted @ 2020-08-13 14:13 lincappu 阅读(432) 评论(0) 推荐(0) 编辑