python - 如何解决这个仅在 WebbPSF 环境中出现的 ModuleNotFoundError 错误?
问题描述
我正在尝试运行从https://github.com/szieleniewski/NIFSIM下载的代码来分析来自 JWSTelescope 的数据。在运行主文件 jwsim.py 时,我在其中一个定义上遇到模块错误。
我目前正在使用 Python 3.7、Ubuntu 16.04,并且我在一个环境(称为 webbpsf-env)下工作。这些细节无法更改,因为 WebbPSF(我在代码中使用的程序)需要这样的版本才能工作。主 jsim.py 文件存储在 Downloads 文件夹中。
我收到以下错误:
(webbpsf-env) aleejandrof@aleejandrof-Satellite-C55t-B:~/Downloads/NIFSIM-master$ python jsim.py
*File* "jsim.py", line 18, in <module>
*from* src.JSIM_main *import* main
File "/home/aleejandrof/Downloads/NIFSIM-master/src/JSIM_main.py", line 22, in <module>
*from* JSIM_Specres *import* spectral_res
ModuleNotFoundError: No module named 'JSIM_Specres'
提到的行是这一行:
from JSIM_Specres import spectral_res
有人告诉我,如果我在环境之外工作,可以找到该模块。对我来说,这不是一个选项,因为 Webbpsf 需要在环境中工作。我曾尝试在环境中(通过 pip)再次下载主文件,但无法完成。有没有办法将文件“插入”到环境中?我应该怎么办?
解决方案
作者可能预料到你有一个特定的环境变量集。尝试这个:
$ cd ../NIFSIM-master && env PYTHONPATH=.:src python jsim.py
推荐阅读
- c++ - C++ 中的结构格式化
- angularjs - 以uib模式在控制器之间传递数据
- javascript - GitHub API 401 Node 中的错误凭证但不是 curl
- c - 为什么这段代码不能打印数组中的字符?
- angular - 角度反应来自。表单数组。找不到带路径的控件
- javascript - 在 Chart.js 中制作一个带有反映 X 轴标签的图例的条形图
- docker - Nginx 反向代理 docker 容器 LAN
- php - 使用 Laravel Dusk 测试 ReCaptcha
- nginx - Nginx 无法处理大量请求
- excel - 运行时错误 1004(使用循环将公式添加到单元格区域)