模块
为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,每一个.py的文件就称之为一个模块
使用模块可以避免函数名和变量名冲突,但是尽量不要和系统函数重名
包(package)
存放多个模块的目录就称之为包,每个包下必须有一个 __init__.py
的文件
__init__.py
可以是空文件,也可以有 Python 代码,因为它本身也是一个模块,它的模块名就是包名
可以有多级目录,组成多级层次的包结构
mypackage
- __init__.py
- test.py
- web
- __init__.py
- www.py
- command
- __init__.py
- cmd.py
引入包
- 导入一个模块:import model_name
- 导入多个模块:import module_name1,module_name2
- 导入包中指定模块:from package_name import moudule_name
- 导入包中所有模块:from package_name import *
- 取别名:import numpy as np
' 模块的第一个字符串为模块注释 '
from pyecharts.charts import Bar
模块导入的搜索顺序
import sys
print(sys.path)
# 运行时修改搜索目录
sys.path.append('/Users/tangxiaofeng/my_py_scripts')
# 通过设置 PYTHONPATH 环境变量修改搜索目录
当前Python命令的可执行文件路径
import sys
print(sys.executable)
执行扩展类库
如果不使用"-m"参数,Python会去当前目录寻找http.server,找不到就报错了
# 启动一个http服务
python3 -m http.server 8080