首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python line_profiler找不到模块

Python line_profiler找不到模块
EN

Stack Overflow用户
提问于 2017-01-03 20:41:49
回答 1查看 3.5K关注 0票数 5

我认识到这是我的安装失败,我很抱歉在你的脚上提出这个无趣和无关紧要的问题,但对于我的生活,我无法设法找出问题出在哪里,我的想法已经用完了。我希望有人能迅速指出显而易见的事情。

我正在尝试分析python脚本(使用Kern的line_profiler),并且脚本需要加载netCDF4模块。我已经用pip安装了line_profiler和netCDF4。当我为已安装的软件包列表排队pip时,都报告为“当前”并进行更新。

在不使用探查器的情况下,我的脚本运行时没有问题,这意味着正确地加载了netCDF4模块。但是,如果我从"myscript“目录运行'kernprof -l -v myscript.py‘,则会得到以下错误:

代码语言:javascript
复制
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不是?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-01-03 22:21:06

kernprof有一个重定向到默认python的shebang,它没有所有所需的模块。

您可以通过以下操作强制使用“完整”python安装:

代码语言:javascript
复制
/opt/local/Library/Frameworks/Python.framework/Versions/2.7/‌​Resources/Python.app‌​/Contents/MacOS/Pyth‌​on /usr/local/bin/kernprof -l -v myscript.py

因此忽略了shebang,您可以使用包含所有必需包的python版本运行分析器。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41452002

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档