在Windows上的Emacs中运行Python
我刚刚在windows和IPython上安装了Python 2.7 我习惯于在Linux上从Emacs内部运行IPython,例如在Windows上的Emacs中运行Python,python,shell,emacs,ipython,Python,Shell,Emacs,Ipython,我刚刚在windows和IPython上安装了Python 2.7 我习惯于在Linux上从Emacs内部运行IPython,例如 M-x shell 然后在提示符处键入“ipython” 这在Linux下可以正常工作,但在Windows下,它在打印IPython横幅文本后会挂起,也就是说,它看起来正在工作,但是您永远不会得到IPython提示 我可以在Windows下从标准cmd终端加载IPython(和Python),但不能从Emacs内部加载 还有谁经历过或希望解决这个问题 我在尝试启动
M-x shell
然后在提示符处键入“ipython
”
这在Linux下可以正常工作,但在Windows下,它在打印IPython横幅文本后会挂起,也就是说,它看起来正在工作,但是您永远不会得到IPython提示
我可以在Windows下从标准cmd终端加载IPython(和Python),但不能从Emacs内部加载
还有谁经历过或希望解决这个问题
我在尝试启动普通的Python时也会遇到同样的问题。在Windows中,它不会那么容易工作,而且非常烦人。首先,确保您已安装pyreadline 接下来,我将使用系统路径中的bat文件,该文件包含:
[ipython.bat]
@python.exe -i C:\devel\Python\2.7-bin\Scripts\ipython.py --pylab %*
接下来获取python-mode.el并删除ipython.el。后者已被弃用,python模式包含其功能
相应地更改ipython.py文件的路径并保存它。现在在Emacs中,在init.el文件中执行以下操作
(custom-set-variables
'(py-shell-name "ipython.bat"))
或者,要实现最后一步,请执行C-h v py shell名称并对其进行自定义,如果脚本目录不在系统路径中,请将其更改为ipython.bat或ipython.bat的完整路径。保存以备将来使用
这会让你的IPython外壳正常工作。如果希望在不挂起IPython控制台的情况下使用多个交互式matplotlib图形,还有一个警告。我能绕过这个问题的唯一方法是使用IPython 0.10而不是当前版本。我希望我刚才看到过这篇文章。我在Emacs中运行python、ipython的经验如下: 我尝试了许多选项(在Windows7上使用python(x,y)-2.7.3.0) 使用ipython.el: 只要更改ipython命令,它仍然可以工作。我不建议这样做,因为通过更改ipython命令,您失去了ipython.el的一些功能 可以显示地物,但在关闭地物之前,提示将被冻结 裸python不起作用 更改py外壳名称(如上所述): 当我添加--pylab选项时,我的数字总是挂起的 我总是有一个IPython终端 介绍ipython.bat
@C:\\Python27\\python.exe -i -u C:\\Python27\\Scripts\\ipython-script.py %*
并更改路径,以便在ipython.exe之前找到ipython.bat
IPython可以工作,但仍然只有一个线程(必须关闭figure才能返回shell)
Python也可以工作,Python-mode.el中的所有剩余函数也可以工作
在打开一个图形(在emacs中)之后,我仍然需要弄清楚如何返回shell。我开始使用Python 2.6和更早版本的IPython来工作,使用
Python-I
或IPython-I
而不是Python
或IPython
为我工作(它在Emacs中得到提示,而不是无限期地挂起)
来自python--帮助:
-i:运行脚本后进行交互检查;强制提示“均匀”
如果stdin似乎不是终端;另外,PYTHONINSPECT=x
但是,生成的python解释器可能无法完全正常工作。您有两种选择:
- 如果您在conda环境中使用python:我建议您切换到正确的python安装。这并不意味着删除Anaconda,它只意味着从Windows“%PATH%”变量下载Python并从中删除Anaconda的Python。如果你不这样做,你会在图片显示方面遇到很多问题,比如激活conda(conda activate base)等等,我从来没有成功地解决过所有问题
- 如果您使用的是Python.org/downloads上的Python:您走对了路!检查Python是否可以从命令行(Win+R cmd Python)访问,如果不能访问,则将其路径添加到Windows path变量中
pip install ipython
)以及matplotlib和numpy(如果您使用它们,但谁不使用它们:pip install matplotlib
,pip install numpy
)
然后在您的计算机上找到ipython-script.py的位置(在文件资源管理器中键入“ipython script.py”以找到它),并将其作为变量python shell解释器args中“-i”后面的参数。还要检查pythonshell解释器是否设置为python
。你应该有这样的东西:
(setq python shell解释器“python”)
(setq python shell解释器参数“-ic:/Users/YOUR-USER-NAME/AppData/Local/Continuum/anaconda3/Scripts/ipython script.py”)
这样,您就可以使用M-x run python
直接从emacs运行pythonshell(或者,从python文件中,先运行C-C-p,然后运行C-C-C)
当然,如果愿意,您也可以通过命令在shell终端上执行相同的操作:
python-i“c:/Users/YOUR-USER-NAME/AppData/Local/Continuum/anaconda3/Scripts/ipython script.py”
也可以使用相同的命令创建bat文件。但这不是必须的
(使用Python 3.8进行测试)Godspeed Hiett-emacs和Windows.fair comment-我正在将一些软件移植到Windows,并试图使我的开发过程尽可能相同(简单?),例如,emacs和mingw在samba共享的Windows virtualbox上运行。我已经用python编写了一个系统测试框架,希望在windows上运行与在linux上相同的黑盒测试,因此这个问题是不是有一个特别的原因你不使用
运行python
?在使用emacs 24.2的Windows上,它似乎是开箱即用的(如果您想使用ipython
而不是默认值,我想您需要M-x自定义变量python命令
。@Inaimathi:我在Windows上有emacs 24.3.1<代码>运行python
返回“搜索程序:许可证