标签:调用 module 独立 sys.path versions ack 查找 开源 pat
- 一个.py文件为一个模块
- 可维护性
- 可扩展性
- 每个模块有独立的命名空间
- 内置标准模块
- 第三方开源模块
- 自定义模块
- import module
- from module import xx
- from module.xx.xx import xx as rename
- from module.xx.xx import *
- sys.path
- 按照路径列表顺序去查找模块名,只要找到就停止
- 空元素代表当前目录,所以自定义当前目录模块会被优先导入
import sys
print(sys.path)
[‘‘,
‘/Library/Frameworks/Python.framework/Versions/3.6/lib/python36.zip‘,
‘/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6‘,
‘/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload‘,
‘/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages‘]
- 把相关的模块放在一个文件夹中,这个文件夹就被称为包
- 文件夹内必须存在__init__.py文件,该文件用于标识该文件夹为包
- 添加环境变量,把父级路径添加到sys.path中,从父级开始查找
import sys ,os
# __file__的是打印当前被执行的模块.py文件相对路径,注意是相对路径
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
sys.path.append(BASE_DIR)
from proj import settings
- .. 上层路径
- . 当前路径
标签:调用 module 独立 sys.path versions ack 查找 开源 pat
原文地址:https://www.cnblogs.com/chacecai/p/8978832.html