如何在QT Console python中保存代码历史记录?

时间:2017-02-20 08:35:49

标签: python ipython jupyter qtconsole

我刚从R切换到Python,发现Jupyter Qt Console非常方便,有助于逐行运行代码。

但我有一个问题:如何保存已输入的代码?我的意思就像Rstudio一样,左上角是代码编辑器,左下角是控制台窗口。所以我可以全面了解我的代码并逐行调试。

我曾尝试过Spyder(Rstudio之类),但它在自动完成方面存在一些问题。 Qt控制台要好得多。有没有办法将文本编辑器和qt控制台组合到一个IDE中?

谢谢!

1 个答案:

答案 0 :(得分:0)

从jupyter qtconsole中,您可以使用%save魔法来保存您的工作。它比我想要的更麻烦,因为你必须指定要保存的输入单元格,但仍然非常方便。

例如,要将输入单元格2到7保存到名为MyCommands.py的文件,只需键入

即可
%save MyCommands.py 2-7

将文件保存在当前工作目录中。如果文件已存在,它甚至会警告您并要求确认。

有关更多信息,请使用jupyter非常实用的内置帮助功能,方法是在您需要帮助的项目后添加问号。

%save?

打印docstring

  

Docstring:将一组行或宏保存到给定的文件名。

     

用法:%save [options] filename n1-n2 n3-n4 ... n5 .. n6 ...

     

选项:

     

-r:使用' raw'输入。默认情况下,处理过的'使用历史,
  这样魔法就会在他们的变形版本中加载到有效的中   蟒蛇。如果给出此选项,则输入的原始输入为
  改为使用命令行。        -f:强制覆盖。如果文件存在,%save将提示覆盖,除非给出了-f。

     

-a:附加到文件而不是覆盖它。

     

此函数使用与输入范围的%history相同的语法   将行保存到您指定的文件名。

     

它添加了一个' .py'如果你自己不这样做,那么扩展到文件   它在覆盖现有文件之前要求确认。

     

如果使用-r选项,则默认扩展名为.ipy。文件:
  〜/ anaconda3 / LIB / python3.5 /站点包/ IPython的/核心/魔法/ code.py

请注意,您可以使用问号来调查带有文档字符串的任何函数或对象(即enumerate?range?)。