Godot 4虚拟环境中使用numpy遇重复导入及CSV导入错误
解决方案:Godot 4误导入numpy测试CSV导致的重复导入及错误问题
问题本质
Godot会自动扫描项目目录中的CSV文件,将其识别为翻译资源(要求每行包含固定数量的语言列),但numpy安装包内的测试CSV(如umath-validation-set-*.csv)格式不符合这个要求,因此触发导入错误,且Godot会反复尝试重新导入这些文件。
可行解决方案
1. 将Python虚拟环境移至Godot项目外部
- 在项目目录外创建虚拟环境,例如
../python_venv,执行pip install numpy pandas安装依赖。 - 在Godot中调用Python脚本时,指定外部虚拟环境的解释器路径:
- Linux/Mac:
../python_venv/bin/python - Windows:
../python_venv/Scripts/python.exe
- Linux/Mac:
- 此方法从根源避免Godot扫描到虚拟环境内的文件,彻底解决问题。
2. 配置Godot忽略虚拟环境目录
如果必须将虚拟环境放在项目内,通过以下方式让Godot跳过该目录的资源扫描:
- 方式一:修改project.godot文件
打开项目根目录的project.godot,在[resource]节点下添加:resource_exclude_filters="res://Python_files/venv/**" - 方式二:通过Godot编辑器设置
点击顶部菜单Project > Project Settings > General > Import > Resource Exclusion Filters,添加规则res://Python_files/venv/**,保存设置后重启编辑器。
3. 临时应急方案(不推荐)
手动删除numpy测试目录下的问题CSV文件,路径为:
res://PythonFiles/venv/lib64/python3.10/site-packages/numpy/core/tests/data/
删除该目录下所有umath-validation-set-*.csv文件。但此方法治标不治本,重新安装numpy时文件会再次生成。
内容的提问来源于stack exchange,提问作者K3rim
相关产品推荐
相关产品推荐

