在 .blend 文件内的脚本中,我尝试从与该 Blend 文件相关的文件夹导入模块。
这是我的文件夹结构:
型号/
model.blend
- _脚本/
- 颜色小偷-py-master/
colorthief.py
- ...其他 python 模块存储库在这里
model.blend
在其脚本之一的顶部有此代码:
from os.path import dirname as up
packages_path = os.path.join(up(bpy.data.filepath), "_scripts")
if (not packages_path in sys.path):
sys.path.insert(0, packages_path)
当我之后尝试导入 colorthief 时 (
from colorthief import ColorThief
),我得到一个 ModuleNotFoundError
。 script/ 文件夹中的所有其他模块也是如此。
我已检查 _scripts 文件夹是否已成功添加到路径中。
我在这里做错了什么?我使用的是 MacOS,但理想情况下正在寻找跨平台解决方案。
问题是,当您使用“sys.path.insert(0,packages_path)”时,系统文件会出现在文件夹中
Models
试试这个
from _scripts.color-thief-py-master.colorthief import ColorThief
或在使用 'sys.path.insert(0, packages_path)' 之前导入 ColorThief