【python】模块和包
模块
模块就像是C++中的头文件,是一个代码文件,是别人已经写好的代码文件,文件中的函数类以及变量,我们都可以是使用。
使用模块的好处:使用别人已经实现的功能,方便。
模块的制作
制作模块就是定义一个python文件。
模块中可以定义变量,定义函数,定义类。
模块的导入
方法一:
import 模块名称
方法二:
from 模块名 import 功能名1,功能名2,...
# 如果存在同名的方法名,就会被覆盖
方法三:
from 模块名 import * # 导入的是_init__.py中的内容
# as起别名,对模块和函数起别名
一旦使用了别名,就不能再使用原来的名字
如果导入到是自己书写的模块,如果不在同一路径下,就需要带路径。
模块中的变量
'''
__all__变量,可以在每个代码文件中(模块中)定义,类型是元素,列表
作用:影响 from 模块名 import * 导入行为,另外的两种不受影响
1.如果没有定义__all__变量,模块中的所有功能,都可以被导入
2.如果定义__all__变量,只能导入 变量中定义的内容
'''
my_modules:
__all__ = ()
这样的*导包的语法将不能轻松使用包内的函数,变量
'''
__name__
用于1.直接运行代码文件
2.将代码文件作为模块,运行导入
'''
if __name__ == '__main__': # 判断主模块
# 可以使用 main + enter 快速生成
模块的注意点
- 自定义的模块名不要和系统中的模块名称相同 sys.path 查看模块查找路径次序