python模块、包、异常处理注意点
模块
模块变量
__all__变量:定义可导出成员,仅对from xx import *语句有效
__doc__变量:文档注释字符串
__file__变量:模块对应的文件路径名
__name__变量:模块自身名字,可以判断是否为主模块
加载过程
在模块导入时,模块的所有语句会执行
如果一个模块已经导入,则再次导入时不会重新执行模块内的语句
搜索顺序
内建模块 –> 自定义模块 –> 系统标准模块 –> 第三方模块
sys.path中路径的顺序,可自行添加
sys.path中第一个通常是程序运行时的路径
包
from 包名.子包名.模块名 import 成员名 [as 新名]
__init__.py:是包内必须存在的文件,会在包加载时被自动调用
异常
- 语法:
try: 可能触发异常的语句 except 错误类型1 [as 变量1]: 处理语句1 except 错误类型2 [as 变量2]: 处理语句2 except Exception [as 变量3]: 不是以上错误类型的处理语句 else: 未发生异常的语句 finally: 无论是否发生异常的语句 raise
目的:在程序调用层数较深时,向主调函数传递错误信息要层层return 比较麻烦,所以人为抛出异常,可以直接传递错误信息- 自定义异常
class 类名Error(Exception): def __init__(self,参数): super().__init__(参数) self.数据 = 参数
文档信息
- 本文作者:Weikang Yu
- 本文链接:https://AccelYu.github.io/2020/03/21/core/
- 版权声明:自由转载-非商用-非衍生-保持署名(创意共享3.0许可证)