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

问题描述 投票:1回答:4

所以我是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'

我想有些东西我不知道,我认为这是一个常见的菜鸟问题。你能帮帮我吗?

python python-3.x package anaconda
4个回答
2
投票

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

pip3 install numpy

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

/usr/bin/idle

这应该是你用pip install numpy安装的numpy


2
投票

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

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

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

Pycharm社区版 - > Click Here

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

据我所知,Pycharm比Anaconda的Jupyter笔记本更好

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


1
投票

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

C:\ Python34 \ Scripts \ pip.exe安装numpy

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


1
投票

可能有两个问题 -

  1. 你使用python 2作为IDLE的内核,因为为python3.6安装了numpy。这会引发错误。
  2. 问题在于anaconda的IDLE配置。 Anaconda在./anaconda/lib/python3.6/site-packages中安装numpy。如果IDLE使用系统默认的python而不是anaconda的。你将无法导入numpy。

您可以尝试运行此代码段 - 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))

© www.soinside.com 2019 - 2024. All rights reserved.