【问题标题】:python install script import errorpython安装脚本导入错误
【发布时间】:2014-11-29 05:53:28
【问题描述】:

我正在使用 anaconda python 发行版,但在运行脚本时遇到问题。我在脚本上使用命令“sudo python setup.py install”。以下是安装脚本的几行(似乎出现错误的地方):

try:
    from nisext.sexts import package_check, get_comrec_build
except ImportError:
    raise RuntimeError('Need nisext package from nibabel installation'
                       ' - please install nibabel first')

当我运行“sudo python setup.py install”时,我收到以下错误:

Traceback (most recent call last):
  File "setup.py", line 23, in <module>
    raise RuntimeError('Need nisext package from nibabel installation'
RuntimeError: Need nisext package from nibabel installation - please install nibabel first

这对我来说没有任何意义,因为我在当前环境中有必要的包。当我使用“python”命令打开 python 并手动键入“from nisext.sexts import package_check,get_comrec_build”行时,包导入正常,python 显示新行(据我所知,导入成功)。有谁知道为什么会发生这种情况?我不知道为什么会出现这个错误。

【问题讨论】:

    标签: python import installation package anaconda


    【解决方案1】:

    想通了。我发布回复而不是删除,因为它可能对像我这样刚接触 linux 的人有所帮助。显然, sudo 命令在 root 的环境中运行,并且不保留虚拟环境(在我的例子中是包的位置)。因此,这些包在 python 寻找它们的地方不存在,因为它在默认包位置而不是虚拟环境的包中查找。

    【讨论】:

    • 无论如何,您都不需要将sudo 与 Anaconda 一起使用,因为它默认以用户权限安装。使用 sudo 只会导致未来的权限问题,因为它会写入具有权限的文件,因此您需要再次使用 sudo 来修改或删除它们。
    猜你喜欢
    • 2019-02-01
    • 1970-01-01
    • 2019-09-04
    • 1970-01-01
    • 2012-01-31
    • 1970-01-01
    • 2015-08-18
    • 2015-04-02
    • 2020-08-12
    相关资源
    最近更新 更多