python 导入模块失败
python import module fails
custom/
scripts/
__init__.py
file1.py
utils/
__init__.py
utilFile1.py
utilFile2.py
utilFile3.py
我有上面的文件结构,我正在努力弄清楚如何在 python 中导入模块。我浏览了具有相同问题的 Whosebug 帖子,但我仍然无法弄清楚为什么我无法让它工作。
我正尝试在 Maya 中导入这些模块,当我 运行
from utils import utilFile1
我明白了
ImportError: cannot import name utilFile1.
运行 from custom.scripts.utils import utilFile1
给我这个错误 ImportError: no module named custom.scripts.utils.
但是如果我 运行 import file1
它导入没有任何错误
我已将 custom/scripts 附加到 sys.path,当它不起作用时,我也尝试附加 custom/scripts/utils,但这也不起作用。基于 Whosebug 上的一些帖子,我看到一些人建议 运行 "python -m" 但我不确定我是否应该 运行 这个或从哪里执行它。
我真的很困惑为什么我根本无法让它工作。
您已按照以下步骤将其设为 python 软件包,
在您的根目录中创建 setup.py,
你的情况
custom/
setup.py
scripts/
...
...
在setup.py
from setuptools import setup, find_packages
setup(
name='your_package_name',
description='bla bla bla',
version='0.0.1-dev',
install_requires=[
],
)
然后点击
pip install -e .
有关详细信息,请参阅 this docs
请更新目录结构如下。
Python 可能不会考虑将自定义作为模块,因为它没有 __init__.py
文件,
custom/
__init__.py
scripts/
__init__.py
file1.py
utils/
__init__.py
utilFile1.py
utilFile2.py
utilFile3.py
Yash 的方法很有效,我相信这就是公司用来设置环境的方法。另一种方法是将脚本路径作为 PYTHONPATH 添加到 maya.env 文件中,而不是使用 sys.path.append。我不确定为什么会有差异,或者是因为我在 windows 上尝试这个,但奇怪的是它在我的情况下有效。
custom/
scripts/
__init__.py
file1.py
utils/
__init__.py
utilFile1.py
utilFile2.py
utilFile3.py
我有上面的文件结构,我正在努力弄清楚如何在 python 中导入模块。我浏览了具有相同问题的 Whosebug 帖子,但我仍然无法弄清楚为什么我无法让它工作。
我正尝试在 Maya 中导入这些模块,当我 运行
from utils import utilFile1
我明白了
ImportError: cannot import name utilFile1.
运行 from custom.scripts.utils import utilFile1
给我这个错误 ImportError: no module named custom.scripts.utils.
但是如果我 运行 import file1
它导入没有任何错误
我已将 custom/scripts 附加到 sys.path,当它不起作用时,我也尝试附加 custom/scripts/utils,但这也不起作用。基于 Whosebug 上的一些帖子,我看到一些人建议 运行 "python -m" 但我不确定我是否应该 运行 这个或从哪里执行它。
我真的很困惑为什么我根本无法让它工作。
您已按照以下步骤将其设为 python 软件包,
在您的根目录中创建 setup.py, 你的情况
custom/
setup.py
scripts/
...
...
在setup.py
from setuptools import setup, find_packages
setup(
name='your_package_name',
description='bla bla bla',
version='0.0.1-dev',
install_requires=[
],
)
然后点击
pip install -e .
有关详细信息,请参阅 this docs
请更新目录结构如下。
Python 可能不会考虑将自定义作为模块,因为它没有 __init__.py
文件,
custom/
__init__.py
scripts/
__init__.py
file1.py
utils/
__init__.py
utilFile1.py
utilFile2.py
utilFile3.py
Yash 的方法很有效,我相信这就是公司用来设置环境的方法。另一种方法是将脚本路径作为 PYTHONPATH 添加到 maya.env 文件中,而不是使用 sys.path.append。我不确定为什么会有差异,或者是因为我在 windows 上尝试这个,但奇怪的是它在我的情况下有效。