【问题标题】:Nice copying from Python Interpreter从 Python 解释器很好地复制
【发布时间】:2009-08-30 02:18:40
【问题描述】:

当我使用 Python 解释器时,我总是觉得尝试从中复制代码很痛苦,因为它会插入所有这些 >>> 和 ...

是否有 Python 解释器可以让我复制代码,而无需处理这个问题?或者,有没有办法清理输出。

另外,有时我想粘贴代码,但代码是缩进的。有没有可以自动缩进而不报错的控制台?

相关

【问题讨论】:

    标签: python


    【解决方案1】:

    IPython 允许您显示、保存和编辑命令历史记录,例如显示会话的前三个命令,而无需键入 %hist -n 1 4 的行号。

    【讨论】:

    • %hist%history 的替代名称
    • 我不知道 -n 选项!谢谢!
    【解决方案2】:

    来自Wingware 的 WingIDE 可让您在单独的解释器窗口中评估任何代码块。

    【讨论】:

      【解决方案3】:

      IPython 将允许您粘贴带有前导缩进的 Python 代码,而不会出现 IndentationError。如果你愿意,你也可以change your prompts 删除 >>> 和 ...。

      【讨论】:

      • 这确实让它变得更容易了,但不幸的是,我在回答后仍然得到了额外的一行:即 x=10 a=11 a+x 21
      • 抱歉,评论显示不正确:-(
      • 使用 IPython(或 ipythonrc 等效项)的 -nosep 选项删除空行。
      • %history, %doctest_mode, %cpaste IPython 的魔法函数也可能有帮助。
      【解决方案4】:

      我有一个 vim 宏来“在清理解释器提示和示例输出时粘贴 [[==stuff not before prompts”,如果您使用的是 vim,我很乐意分享它。当然,任何名副其实的编辑器或 IDE 都同样易于为此目的进行编程!

      【讨论】:

      • 谢谢,我想要那个。我用过VIM,但我从来没有用过宏。这可能并不难弄清楚。
      【解决方案5】:

      像Notepad++这样体面的文本编辑器可以进行全局搜索和替换操作,可以将>>>替换为空。

      【讨论】:

      • “体面”是指任何编辑器,它不仅是窗口中的备忘录吗?因为这是基础的基础...lol
      • @thereisnospork:哦,你的意思是 g/^>>> /s/// 之类的东西……我在 CP/M 盒子上的编辑器里有那个东西(将软件工具 edit 从 Ratfor 移植到C 表示轻松娱乐)。与提供的编辑器相比,这还不错。
      猜你喜欢
      • 2012-11-10
      • 2011-01-25
      • 1970-01-01
      • 1970-01-01
      • 2015-09-19
      • 1970-01-01
      • 1970-01-01
      • 2017-03-23
      • 1970-01-01
      相关资源
      最近更新 更多