Python包在终端上导入,但不在IDLE

时间:2017-08-31 09:15:39

标签: python python-3.x package anaconda

所以我是Python新手。我下载了Anaconda(和Homebrew)并在我的Mac上使用终端我确认,比如Numpy已安装:

pip install numpy

得到结果

Requirement already satisfied: numpy in ./anaconda/lib/python3.6/site-packages

然后在终端I中打开Python确实可以导入包。一旦我打开IDLE,故事就不一样了。因此,当我打开它并尝试导入时,比方说,Numpy我收到以下消息:

    Traceback (most recent call last):
  File "<pyshell#1>", line 1, in <module>
    import numpy
ModuleNotFoundError: No module named 'numpy'

我猜有些事情我不知道,我认为这是一个常见的菜鸟问题。你能帮我解决这个问题吗?

4 个答案:

答案 0 :(得分:2)

当您使用Anaconda时,它会创建自己的虚拟环境。 现在,如果您是MAC上的python新手,那么您可能不熟悉虚拟环境。

我建议你从官方网站www.python.org下载 python Click here直接在MAC上下载Python 3.6.2。

然后,下载 Pycharm (Python的最佳IDE) 下载适合初学者的社区版本,它也是免费的。

Pycharm社区版 - &gt; Click Here

做任何你想做的事情,也必须阅读 Virtualenv

根据我的说法, Pycharm比Anaconda的Jupyter笔记本更好

祝你好运,并在python中展示你的创造力! !

答案 1 :(得分:2)

由于你的IDLE使用的是Python 3,你应该使用

pip3 install numpy

为正确的Python安装它。如果您想使用默认安装的Python(2.x),IDLE位于/ usr / bin /。从您的终端,您可以使用

打开它
/usr/bin/idle

这应该是您使用pip install numpy

安装的numpy

答案 2 :(得分:1)

呃......好吧,好像 - 因为你的计算机上有两个版本 - 可能是因为它将它导入了另一个文件路径目录。现在,我从未使用过Mac,但我认为如果你只是指定要从哪个pip下载,它可能会有效。 例如,在Windows上:

  

C:\ Python34 \ Scripts \ pip.exe install numpy

或者如果您使用的是3.6,那么您将按照文件夹的路径,找到pip并安装。因此,我建议在构建它之前的任何其他平台之前安装正常的IDLE只是因为它更容易导入模块并且不像你的那样破坏。

答案 3 :(得分:1)

可能有两个问题 -

  1. 您使用python 2作为IDLE的内核,因为为{python3.6}安装了numpy。这会引发错误。

  2. 问题在于使用IDLE的anaconda配置。 Anaconda在./anaconda/lib/python3.6/site-packages中安装numpy。如果IDLE使用系统默认的python而不是anaconda&#39; s。你将无法导入numpy。

  3. 您可以尝试运行此代码段 -
    import sys print('\n'.join(sys.path))
    准确地跟踪python的位置。

    我能想到的其中一个解决方法是 - 使用anaconda创建虚拟环境。像什么一样的东西 conda create -n py352 python=3.5.2 anaconda
    然后从你的终端开火IDLE。虽然我不完全确定,如果这适用于mac。如果它没有,请告诉我 - 的输出 import sys print('\n'.join(sys.path))