2011-07-31 144 views
13

在IPython中是否有清除屏幕的命令?在IPython中清除屏幕

編輯:作爲@Saher提到下面,我可以使用clean the screenimport os; os.system('CLS'),但有沒有辦法做到這一點,而無需導入所有的os

+1

看到答案,類似的問題[這裏] [1] [1]:http://stackoverflow.com/questions/1432480/any-way-to-clear-python-shell –

+0

HTTP://計算器。com/questions/1432480/any-way-to-clear-python-shell –

+1

你也可以在你的'ipy_user_conf.py'文件中添加一個別名。我經常使用它,所以我把它命名爲'c'而不是輸入'!clear'。 – wim

回答

17

要清除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

+0

這一個工作!在你提供的鏈接中,我沒有看到關於'!CLS'的任何信息。我錯過了什麼嗎? –

+3

如果由感嘆號標記前綴,則CLS命令(或任何命令)由操作系統執行。 – mzjn

+6

謝謝。 !明確爲我工作(在* nix)。 – David

1

如果您運行的是Windows嘗試os.system('CLS')

您需要導入操作系統第一,但:

import os 
+0

感謝Saher,'進口OS之後; os.system('CLS')似乎工作(至少在Windows中)。有沒有辦法做到這一點,而不必導入所有的'os'? –

+0

我不認爲有沒有辦法做到這一點,沒有導入* os * –

14

你可以把這個放入你的~/.ipython/ipythonrc其綁定到共同CTRL-L快捷鍵:

readline_parse_and_bind "\C-l": clear-screen 
+0

命令'clear-screen'似乎無法在我的系統上運行(使用Spyderlib的Windows),但我喜歡將解決方案綁定到'Cl' –

+1

對我來說,這行已經在我的ipythonrc中 readline_parse_and_bind「\ Cl」:可能完成 我不得不將它評論出來,然後它工作得很好。 – mehtunguh

+0

在Windows上對我來說'SyntaxError:invalid syntax' –

0
__import__('os').system("reset") 
4

明確的是在IPython的0.11

In [76]: a = get_ipython() 

In [77]: a.alias_manager.expand_alias('clear') 
Out[77]: u'clear ' 
7

也許我只是用新版本的默認別名,但它工作得很好,我只用:

cls 

在Windows中,並在* nix:

clear 
6

對我來說,只要輸入「清除」就足夠了。

+0

這適用於我在Ubuntu上(我假設幾乎所有的Unix系統)。然而不是在Windows上,但是'!CLS'和'cls'工作。 – quapka

+0

清除在MAC OS X上的作品。 –

5

CTRL +L的兩個WindowsUbuntu工作。我猜這是最好的,因爲你不必輸入太多。

0

在macOS 10.13.1的終端2.8中,按下命令k以清除啓動。

明確導致「NameError:name'clear'未定義。」

警告:作爲一個noob我可能不完全理解我做了什麼,但命令k似乎做我想要的。