Python包在终端上导入,但不在IDLE上导入
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python包在终端上导入,但不在IDLE上导入相关的知识,希望对你有一定的参考价值。
所以我是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'
我想有些东西我不知道,我认为这是一个常见的菜鸟问题。你能帮帮我吗?
由于你的IDLE使用的是Python 3,你应该使用
pip3 install numpy
为正确的Python安装它。如果您想使用默认安装的Python(2.x),IDLE位于/ usr / bin /。从您的终端,您可以打开它
/usr/bin/idle
这应该是你用pip install numpy
安装的numpy
当您使用Anaconda时,它会创建自己的虚拟环境。现在,如果您是MAC上的python新手,那么您可能不熟悉虚拟环境。
我建议你从官方网站www.python.org或Click here下载python,直接在你的MAC上下载Python 3.6.2。
然后,下载Pycharm(适用于Python的最佳IDE)下载适合初学者的社区版本,它也是免费的。
Pycharm社区版 - > Click Here
并做任何你想做的事情,也必须阅读Virtualenv
据我所知,Pycharm比Anaconda的Jupyter笔记本更好
祝你好运,并在python中展示你的创造力! !
嗯......好吧,好像 - 因为你的计算机上有两个版本 - 可能是因为它将它导入到另一个文件路径目录中。现在,我从未使用过Mac,但我认为如果你只是指定要从哪个pip下载,它可能会有效。例如,在Windows上:
C: Python34 Scripts pip.exe安装numpy
或者如果您使用的是3.6,那么您将按照文件夹的路径,找到pip并安装。因此,我建议在构建它之前的任何其他平台之前安装正常的IDLE只是因为它更容易导入模块并且不像你的那样破坏。
可能有两个问题 -
- 你使用python 2作为IDLE的内核,因为为python3.6安装了
numpy
。这会引发错误。 - 问题在于anaconda的IDLE配置。 Anaconda在./anaconda/lib/python3.6/site-packages中安装numpy。如果IDLE使用系统默认的python而不是anaconda的。你将无法导入numpy。
您可以尝试运行此代码段 -
import sys
print('
'.join(sys.path))
准确地跟踪python的位置。
我能想到的解决方法之一是 - 使用anaconda创建虚拟环境。就像是
conda create -n py352 python=3.5.2 anaconda
然后从你的终端开火IDLE。虽然我不完全确定,如果这适用于mac。如果没有,请告诉我 - 的输出 -
import sys
print('
'.join(sys.path))
以上是关于Python包在终端上导入,但不在IDLE上导入的主要内容,如果未能解决你的问题,请参考以下文章
“未找到导入 tensorflow 模块”仅在 jupyter 笔记本上,但不在 jupyter 实验室或终端上
在 Spark 中的 EMR 上使用 --py-files 从 .zip 文件(使用 zipfile 包在 python 中创建)导入模块时出现问题