有没有类似于RStudio的Python工具?

190 投票
10 回答
104490 浏览
提问于 2025-04-17 07:17

在RStudio中,你可以在代码编辑窗口里运行代码的一部分,结果会显示在控制台里。

你还可以做一些很酷的事情,比如选择要运行光标前的所有代码、光标后的所有代码,或者仅仅运行你选中的那部分代码等等。而且这些操作都有快捷键可以使用。

这就像是比Python的交互式命令行更进一步的工具——在Python的交互式环境中,你可以用readline命令回到之前的某一行,但它并不知道什么是函数、什么是一段代码等概念。

那Python有没有类似的工具呢?或者说,你在使用vim的时候有没有什么类似的解决办法呢?

10 个回答

34

Jupyter Notebook(之前叫做IPython notebook)是一个很酷的项目,可以让你在Python(还有其他语言,比如R)中进行互动式的数据处理。简单来说,它让你可以在一个界面中边写代码边记录你在做什么,最后可以把这些内容保存为:

  • 笔记本(.ipynb
  • 脚本(一个只包含源代码的.py文件)
  • 静态HTML(也可以转换成PDF)

你甚至可以通过nbviewer服务在线分享你的笔记本,其他人可以看到你发布的整本书。此外,GitHub也能直接显示你的.ipynb文件。你还可以把你的Jupyter笔记本发布为可重复的研究文章,放在Authorea上。如果你想要多人协作编辑,可以试试基于Jupyter的Google Colab

Jupyter Notebook 截图

默认的Jupyter Notebook版本会在本地启动一个网页应用(或者你可以把它部署到服务器上),然后你可以通过浏览器来使用它。正如Ryan在他的回答中提到的,Rodeo是一个更像RStudio的界面,基于Jupyter内核。

JupyterLab是一个更新的用户界面,提供了更多灵活性,让你可以更方便地编辑笔记本、控制互动小部件,甚至在终端模拟器中运行命令。

还有一个IPython的Qt控制台,这是一个类似的项目,支持内嵌图表,是一个桌面应用程序。

Jupyter是一个普通的Python包,可以通过pip install jupyter来安装。不过,如果你想在电脑上运行所有的科学库,试试官方的Jupyter Docker容器可能会更简单。例如,假设你的笔记本在~/code/jupyter,你可以这样运行容器:

docker run -it --rm -p 8888:8888 -v ~/code/jupyter:/home/jovyan/work jupyter/datascience-notebook
36

可以选择使用Spyder,或者安装Python(x,y)。这两个都很好用。

如果你刚接触Python,可以安装免费的Anaconda版本(http://continuum.io/downloads.html),它会帮你安装Spyder,还有Python 2.7和IPython。Spyder的使用体验和RStudio很相似。

54

IPython笔记本真是太棒了!我最近发现了一个新的基于浏览器的工具,叫做Rodeo。我的感觉是,它似乎更好地支持类似RStudio的工作流程。

Rodeo截图

撰写回答