【问题标题】:Clearing the screen in IPython在 IPython 中清除屏幕
【发布时间】:2011-10-17 01:23:02
【问题描述】:

IPython 中有清除屏幕的命令吗?

编辑:正如@Saher 下面提到的,我可以使用import os; os.system('CLS') clean the screen,但是有没有办法做到这一点而不必导入所有os

【问题讨论】:

  • 查看类似问题的答案 [此处][1] [1]:stackoverflow.com/questions/1432480/…
  • 您也可以在ipy_user_conf.py 文件中添加别名。我经常使用这个,所以我把它别名为c,而不是输入!clear
  • 我不得不从 ~/.ipython/ipythonrc readline_parse_and_bind "\C-l": possible-completions 中注释掉这一行,之后效果很好

标签: python windows ipython


【解决方案1】:

如果您正在运行 Windows,请尝试 os.system('CLS')

你需要先导入操作系统:

import os

【讨论】:

  • 感谢 Saher,import os; os.system('CLS') 似乎有效(至少在 Windows 中)。有没有办法做到这一点而不必导入所有 os
  • 我认为没有导入 os 的方法可以做到这一点
【解决方案2】:

您可以通过将其放入您的~/.ipython/ipythonrc 来将其绑定到常用的 Ctrl-l 快捷键:

readline_parse_and_bind "\C-l": clear-screen

【讨论】:

  • 命令 clear-screen 在我的系统上似乎不起作用(带有 Spyderlib 的 Windows),但我喜欢将解决方案绑定到 C-l 的想法
  • 对我来说,这行已经在我的 ipythonrc readline_parse_and_bind "\C-l": possible-completions 我不得不将它注释掉,然后效果很好。
  • SyntaxError: invalid syntax 我在 Windows 上
【解决方案3】:
__import__('os').system("reset")

【讨论】:

    【解决方案4】:

    要在 Windows 上清除屏幕,请使用 !CLS

    在类 Unix 系统上,使用 !clear

    如果前面有感叹号,则操作系统会执行 shell 命令。见http://ipython.readthedocs.io/en/stable/interactive/reference.html#system-shell-access

    请注意,如果命令被定义为别名,它们也应该在没有感叹号的情况下工作。见http://ipython.readthedocs.io/en/stable/interactive/shell.html?#aliases

    还有一个用于清屏的Ctrl+L快捷键。见http://ipython.readthedocs.io/en/stable/config/shortcuts/index.html#single-filtered-shortcuts

    【讨论】:

    • 这个成功了!我在您提供的链接中没有看到任何关于 !CLS 的信息。我错过了什么吗?
    • 如果前面有感叹号,则 CLS 命令(或任何命令)由操作系统执行。
    • Ctrl + L 就像一个魅力。谢谢!
    【解决方案5】:

    clear 是 ipython 0.11 中的默认别名

    In [76]: a = get_ipython()
    
    In [77]: a.alias_manager.expand_alias('clear')
    Out[77]: u'clear '
    

    【讨论】:

      【解决方案6】:

      也许我只是在使用较新的版本,但对我来说效果很好:

      cls
      

      在 Windows 和 *nix 上:

      clear
      

      【讨论】:

        【解决方案7】:

        对我来说,只需输入“clear”就足够了。

        【讨论】:

        • 这适用于我在 Ubuntu 上(我假设几乎所有的 unix 系统)。但不是在 Windows 上,但 !CLScls 有效。
        【解决方案8】:

        CTRL + L 适用于WindowsUbuntu。而且我想这是最好的,因为您不必输入太多。

        【讨论】:

          【解决方案9】:

          在 macOS 10.13.1 终端 2.8 中,按 command-k 以清除开始。

          clear 导致“NameError: name 'clear' is not defined。”

          注意:作为一个菜鸟,我可能不完全理解我做了什么,但 command-k 似乎做了我想要的。

          【讨论】:

            【解决方案10】:

            在使用 Enthought Canopy Clear、CLS、!CLS 的窗口上,不会清除以前的数据,它只是将所有数据移动到窗口顶部的上方。如果向下滚动,文本就在那里。

            【讨论】:

              猜你喜欢
              • 2020-07-01
              • 1970-01-01
              • 1970-01-01
              • 2018-07-25
              • 2011-04-08
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多