我知道模块的名称不应该有破折号.
这是我的存储库结构
my-repo-name/
src/
tests/
__init__.py
tests.py
fab/
__init__.py
fabfile.py
README.rst
__init__.py
Run Code Online (Sandbox Code Playgroud)
在我的测试中,我需要导入fabfile.py来运行测试.但由于名称有破折号,我不能做from my-module-name.fab.fabfile import X,Y,Z或相对导入,因为它是非包装.
任何建议如何在不乱砍__import__(...)或添加到sys路径的情况下执行此操作?我应该添加另一个目录吗?
import importlib
fabfile = importlib.import_module('my-repo-name.fab.fabfile', None)
X = fabfile.X
Run Code Online (Sandbox Code Playgroud)
但您应该只是更改存储库的名称.为了过渡,您可以创建一个临时的符号链接与
$ mv my-repo-name my_repo_name
$ ln -s my_repo_name my-repo-name
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3074 次 |
| 最近记录: |