【问题标题】:Error while importing modules in Python3在 Python3 中导入模块时出错
【发布时间】:2017-05-05 08:29:56
【问题描述】:

我尝试从 python 2.7 顺利过渡到 python 3.X (3.5.2)。这是一个两步的问题,所以我试图说清楚。

1.我用

做了一个简单的试验
import numpy as np

(我先做了python3 -m pip install numpy)但我收到以下错误消息

  File "<stdin>", line 1, in <module>
  File "/usr/lib/python2.7/dist-packages/numpy/__init__.py", line 180, in <module>
    from . import add_newdocs
  File "/usr/lib/python2.7/dist-packages/numpy/add_newdocs.py", line 13, in <module>
    from numpy.lib import add_newdoc
  File "/usr/lib/python2.7/dist-packages/numpy/lib/__init__.py", line 8, in <module>
    from .type_check import *
  File "/usr/lib/python2.7/dist-packages/numpy/lib/type_check.py", line 11, in <module>
    import numpy.core.numeric as _nx
  File "/usr/lib/python2.7/dist-packages/numpy/core/__init__.py", line 14, in <module>
    from . import multiarray
ImportError: cannot import name 'multiarray'

错误是否与 python2.7 有某种联系?

2. 当我尝试导入已安装的模块时 (pip install module),python3 找不到它们 (ImportError: No module named ...)。在第二种情况下,我认为我安装模块的目录与 python 2.7 连接。 如何将 python3 指向我已经拥有的模块?我的梦想是避免使用python3 -m pip install ModuleName,我不想手动重新安装每个模块(我也不记得我有哪些以及为什么:)。

我使用的是 Ubuntu 16.04.1 LTS。 在我的.bashrc 我有以下部分,可能并不重要,但我尽量提供更多信息

 # added by me for the python import module installed outside anaconda2 (i.e.: pygtk)

export PYTHONPATH="${PYTHONPATH}:/usr/lib/python2.7/dist-packages/"
export PYTHONPATH="${PYTHONPATH}:/usr/lib/python2.7/dist-packages/glib/"

非常感谢。

【问题讨论】:

    标签: python python-2.7 python-3.x numpy pip


    【解决方案1】:

    您应该绝对在您的 .bashrc 中没有这些行。删除它们并启动一个新的 shell。

    不,您需要重新安装 Python3 所需的模块。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-01-27
      • 2015-07-24
      • 1970-01-01
      • 2016-03-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-24
      相关资源
      最近更新 更多