在Python3中导入模块时出错
问题描述:
我试图顺利地从python 2.7传递到python 3.X(3.5.2)。这是一个两步走的问题,所以我试图说清楚。在Python3中导入模块时出错
我做了一个简单的试用与
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某种联系的erorr。 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/"
非常感谢。
答
你应该绝对在你的.bashrc中没有这些行。删除它们并启动一个新的外壳。
不,您需要重新安装Python3所需的模块。