绝对导入
绝对指的是 环境变量 sys.path 里面的路径,项目跟路径在pycharm自动加入环境变量
- 用法
绝对导入可以使用 import <> 或 from <> import <> 这两种语法,比如在 moduleA 模块里面,使用下面的绝对导入语句是有效的。
import package.subpackage1.moduleX as moduleX
from package.subpackage1 import moduleY
from subpackage2 import moduleZ
相对导入
一个py文件中如果使用相对导入,这个文件不能以脚本运行
相对导入解决了绝对导入的一些问题:
同一个包下的模块可以很方便的相互引用,使用像 from . import xxx 的语句就行。
顶层包的报名改了,包下的模块的相对导入的语句基本不用改。
from .moduleY import spam
from .moduleY import spam as ham
from . import moduleY
from ..subpackage1 import moduleY
from ..subpackage2.moduleZ import eggs
from ..moduleA import foo