使导入父目录中的模块更容易
dotdot的Python项目详细描述
点
便于导入父目录中的模块
如果你想解ValueError: attempted relative import beyond top-level package
,dotdot可能对你有帮助。
安装
如果可以成功安装和导入,它应该可以正常工作。
通过pip安装:
pip install dotdot
快速启动
考虑一个常见的项目结构如下:
FooProject
├── foo
│ ├── script.py
│ └── util.py
└── util.py
现在,script.py
可以通过首先导入dotdot
来导入那些util
。像这样:
importdotdotimportfoo.utilimportutil
此外,您还可以通过首先导入dotdotdot
或dotdotdotdot
来导入祖父母或甚至曾祖父母目录中的模块。
工作原理
dotdot通过在import time中更改sys.path[0]
来实现这一魔力。