如何将numpy模块导入/打开到IDLE

SUP*_*hys 7 python numpy python-idle anaconda

我想使用numpy来运行我必须运行的程序,我想在IDLE IDE中执行它.我已经在线安装了numpy二进制文件,但是当我尝试在我的脚本中运行"import numpy"然后运行一些numpy命令时,但python shell返回错误说

Traceback (most recent call last):
  File "/Users/Admin/Desktop/NumpyTest.py", line 1, in <module>
    import numpy as np
ImportError: No module named numpy
Run Code Online (Sandbox Code Playgroud)

我已经尝试使用pip来安装numpy,但是当我pip install numpy在bash shell中运行时,它说

Requirement already satisfied (use --upgrade to upgrade):
numpy in ./anaconda/lib/python2.7/site-packages
Run Code Online (Sandbox Code Playgroud)

我已经下载了Anaconda,我可以使用numpy发行版,但我真的很想在IDLE中这样做.

我该怎么办才能让Numpy在IDLE工作?我必须把它保存在某个地方吗?

ps我正在运行Osx 10.10.5 Yosemite

Ter*_*edy 15

标题在以下意义上具有误导性.您不希望将模块导入IDLE.您想将其导入到运行代码的python中.运行IDLE时,这当前是运行IDLE的python.要查找正在运行的python,以下内容应该可以在任何最近的python上直接或在IDE中的任何位置使用:

import sys; print(sys.executable)
Run Code Online (Sandbox Code Playgroud)

在我的Windows机器上以IDLE运行,我得到了

C:\Programs\Python36\pythonw.exe
Run Code Online (Sandbox Code Playgroud)

(w后缀是Windows特定的变体二进制文件,用于运行GUI程序而不会弹出空的控制台窗口.后面的内容应该省略.)

要将模块导入特定的python,必须为该特定的python安装它.最简单的方法是在控制台中运行与特定python的pip.例如,鉴于上面的可执行文件:

C:\Programs\Python36> python -m pip install numpy
Run Code Online (Sandbox Code Playgroud)

在*nix上,我相信可能必须首先运行python -m ensurepip为该python安装pip本身.

关于import pip; pip.main:pip被设计为命令行实用程序,用于初始化,执行一个函数并退出.main()是一个故意无证的内部实现细节.pip的作者不鼓励使用它,因为它是为一次调用设计的,后面是程序退出.当内部数据与已安装文件不同步时,多次调用将无法正常工作.


Tad*_*sen 5

要在不影响anaconda配置的情况下安装软件包,您可以在IDLE中使用pip:

import pip
pip.main(["install","numpy"])
Run Code Online (Sandbox Code Playgroud)

虽然因为IDLE在刷新率上有点慢(至少在我的mac上),但是在结束之前隐藏输出可能是一个很大的速度提升:

import sys
import pip
import io

stdout_real = sys.stdout
sys.stdout = io.StringIO()
try:
    pip.main(["install","kfksnaf"])
finally:
    stdout_real.write(sys.stdout.getvalue())
    sys.stdout = stdout_real
Run Code Online (Sandbox Code Playgroud)

请注意,这意味着所有标准输出都将显示在错误文本之后,如果出现问题可能会造成混淆,因此请先正常尝试并且只有在它严重滞后时才执行此操作.

另一方面,似乎anaconda已经从python.org安装了许多python的功能,为了减少它对你的机器的影响你应该看看使用默认Python而不是从终端调用时的Anaconda安装虽然这可能会破坏蟒蛇的功能,但如果你想这样做,反过来可能很难转回.