我认识到这是我的一个安装失败,我很抱歉把这个无趣和无关紧要的问题放在你的脚上,但就我的一生而言,我无法弄清楚到底是什么出了问题,我已经没有主意了。我希望有人能很快指出明显的问题。在
我试图评测一个python脚本(使用Kern的line_profiler),该脚本需要加载netCDF4模块。我已经安装了line_profiler和netCDF4和pip。当我将pip排队以获取已安装包的列表时,这两个都报告为present和updated。在
不使用探查器,我的脚本运行没有问题,这意味着netCDF4模块已正确加载。但是,如果我运行'kernprof-l-vmyscript.py'从“myscript”目录中,我得到以下错误:
Traceback (most recent call last):
File "/usr/local/bin/kernprof", line 9, in <module>
load_entry_point('line-profiler==1.0', 'console_scripts', 'kernprof')()
File "Library/Python/2.7/site-packages/kernprof.py", line 221, in main
execfile(script_file, ns, ns)
File "myscript.py", line 5, in <module>
from netCDF4 import dataset
ImportError: No module named netCDF4
我正在从/opt/local/bin/Python的安装运行Python,它在我的路径中首先列出。在
因此,在任何情况下,如果我设置的默认Python版本与路径中第一个出现的版本相同,并且该默认版本能够访问netCDF4模块,那么line_profiler为什么不能呢?在
kernprof
有一个shebang重定向到默认的python安装,该安装没有所有必需的模块。在您可以通过执行以下操作强制使用“完整”python安装:
所以shebang被忽略了,您使用python版本运行分析器,其中包含所有必需的包。在
相关问题 更多 >
编程相关推荐