当作为包安装时,在与 运行 脚本相同的目录中找不到模块
Module not found in same directory as running script when installed as a package
我在包文件夹中使用 python setup.py develop
安装了一个名为 pytable 的自定义包。包层次结构如下所示:
- pytable/
- __pycache__/
- MANIFEST.in
- pytable/
- __init__.py
- __pycache__/
- pytable.py(主模块)
- tableError.py(class 有自定义错误)
- testScript.py(进口 pytable.py)
- README.md
- setup.py
tableError.py 模块被导入到 pytable.py 模块中,并且在 运行 宁 testScript.py 没有安装 pytable python 时工作正常,但是当我用上面的命令安装它,然后 运行 import pytable from pytable
在其他任何地方出错。
ModuleNotFoundError: 没有名为 'tableError'
的模块
问题是在安装包之后 Python 不知道去哪里寻找依赖模块。添加...
import os
import sys
dir_path = os.path.dirname(os.path.realpath(__file__))
sys.path.append(dir_path)
...到 pytable.py 的顶部告诉 Python 在为 tableError.py.
安装的同一目录中查找
我在包文件夹中使用 python setup.py develop
安装了一个名为 pytable 的自定义包。包层次结构如下所示:
- pytable/
- __pycache__/
- MANIFEST.in
- pytable/
- __init__.py
- __pycache__/
- pytable.py(主模块)
- tableError.py(class 有自定义错误)
- testScript.py(进口 pytable.py)
- README.md
- setup.py
tableError.py 模块被导入到 pytable.py 模块中,并且在 运行 宁 testScript.py 没有安装 pytable python 时工作正常,但是当我用上面的命令安装它,然后 运行 import pytable from pytable
在其他任何地方出错。
ModuleNotFoundError: 没有名为 'tableError'
的模块问题是在安装包之后 Python 不知道去哪里寻找依赖模块。添加...
import os
import sys
dir_path = os.path.dirname(os.path.realpath(__file__))
sys.path.append(dir_path)
...到 pytable.py 的顶部告诉 Python 在为 tableError.py.
安装的同一目录中查找