2015-04-27 92 views
89

我想在Jupyter(Ipython Notebook)中註釋掉多行代碼塊,但在當前版本中無法找到如何做到這一點。
它曾經是在下拉菜單之一,但不再存在。
你如何評論多行代碼塊?如何在Jupyter Ipython筆記本中註釋多行?

這不是重複的,因爲在下面的鏈接中給出的解決方案似乎不工作了:
How can I block comment code in the IPython notebook?

按Ctrl +/什麼都不做。

+0

自動圓括號和引號是否工作?早期的ipython版本失去了這種功能(至少它不是默認版本),但最新的穩定版本又有了它。我可以想象評論行與這些和其他代碼編輯功能捆綁在一起。也許你需要更新ipython。 – drevicko

+4

鏈接問題的解決方案仍然適用於IPython 3.0。不幸的是,你需要一個美國的鍵盤佈局來使用它(如答案中給出的)。用我的德語版本,這從來沒有工作過,因此原始的問題和答案仍然有效。 – Jakob

+2

可能重複的[如何阻止評論代碼在IPython筆記本?](http://stackoverflow.com/questions/19318298/how-can-i-block-comment-code-in-the-ipython-notebook) – Jakob

回答

6

我想這在Mac OSX上使用Chrome 42.0.2311.90(64位)和本作品使用CMD +/

The version of the notebook server is 3.1.0-cbccb68 and is running on: 
Python 2.7.9 |Anaconda 2.1.0 (x86_64)| (default, Dec 15 2014, 10:37:34) 
[GCC 4.2.1 (Apple Inc. build 5577)] 

難道是一個瀏覽器相關的問題?你嘗試過Firefox還是IE?

+0

我使用的是Firefox。我有一臺運行Win 7的PC – chrisfs

+0

你可以按照@drevicko提到的方式更新你的ipython版本嗎?你使用的是什麼版本的ipython?什麼版本的Python? – Koen

+0

無論出於何種奇怪和難以辨認的原因,現在按Ctrl-/Works。爲什麼它一天前沒有工作,現在工作,我沒有答案。我沒有更改我的安裝,我正在使用的FWIW 筆記本服務器的版本是3.0.0-f75fda4,並且正在運行: Python 2.7.8 | Anaconda 2.2.0(64位) (默認,2014年7月2日,15:12:11)[MSC v.1500 64位(AMD64)] – chrisfs

113

按Ctrl +/作品對我的Chrome瀏覽器在微軟Windows

+0

對不起,這是CTRL + /在MS Windows – user5036413

+1

也適用於Firefox。 –

+13

這是Cmd + /在Mac上 –

0

使用三聯單引號'''的開頭和結尾。它在函數內將被忽略爲doc string

''' 
This is how you would 
write multiple lines of code 
in Jupyter notebooks. 
''' 

我無法弄清楚如何打印多行,但你可以在這些報價之間的任何地方添加一行,你的代碼將被罰款。

+0

這對我不起作用。 Jupyter抱怨'IndentationError:無論我是否縮進引號之間的東西,預計一個縮進塊。 – teylyn

+0

仍然打印輸出單元格中,不是嗎?我註釋了一個for循環,我在下面的輸出單元格中看到:'\ nfor homeData中的列:\ n homeDataColumn = homeData [column] \ n print(type(homeDataColumn.values [0]))\ n'' – JimLohse

+0

然後,您可以將單元格從下拉菜單中的「代碼」更改爲「rawNB轉換」,以便在運行單元格時不會有輸出 – SherylHohman

15

我還沒有設法找到可能的最佳方式。由於我使用的是帶有Finnish佈局的鍵盤,因此某些答案對我無效(例如user5036413的答案)。

但是,與此同時,我想出了一個解決方案,至少可以幫助我不要逐條評論每一行。我在MS Windows中使用Chrome browser,但我沒有檢查其他可能性。

解決辦法:
它使用的事實,你可以有多個行光標在Ipython Notebook

按下Alt按鈕並持續按住。光標應該將其形狀變成一個大加號。下一步是使用鼠標指向想要評論的第一行的開頭,然後按住Alt按鈕將鼠標向下拉直至您要評論的最後一行。最後,您可以釋放Alt按鈕,然後使用#字符進行評論。瞧!你現在已經評論了多行。

+0

聰明。我剛剛在Firefox中嘗試過這種方式,但它的工作原理卻不得不謹慎選擇光標。 –

+5

工程就像一個魅力!但只是一個澄清。通過按下Alt鍵獲得大+符號後,請執行** NOT **選擇要註釋掉的代碼塊中的所有文本!只需將指針向下拖動文本的細細左側邊緣,即可在該塊的每一行中選擇該行的開頭。然後按#將在每行的開頭插入一個#。 如果您選擇所有文本,它會用磅符號(#)替換每行中的文本。 –

+0

實際上,您可以選擇整個文本。只需按左箭頭取消選擇,然後鍵入你想要的,它將被應用到每一行。 :) – Matt

5

在芬蘭鍵盤使用按Ctrl +多條線路上發表意見,並使用相同的密鑰去評論。

Ubuntu 14.04Google Chrome

+1

也適用於Windows和谷歌Chrome與德國佈局。 Ctrl +# – Ahue

+0

順便說一下,這不適用於Spyder筆記本。 – imsrgadich

4

FN + Cmd的 + /在MacOS的

+2

'Cmd' +'/'也可以工作 – Paul

1

Safari瀏覽器的選擇上jupyter筆記本窗戶線條,然後打按Ctrl +

1

我添加了同樣的情況,並在一對夫婦stackoverfow,github上和教程顯示覆雜的解決方案中去。雖然沒有簡單!一些與「按住ALT鍵並移動鼠標,而光標顯示十字」這是不適用於筆記本電腦用戶(至少對我而言),其他一些配置文件...

我發現它後,一個良好的睡眠晚。我的環境是筆記本電腦,Ubuntu和Jupyter/IPython的5.1.0:

只需選擇/高亮一條線,塊什麼的,然後 「Ctrl」 鍵+ 「/」 和它的神奇:)

11

快速添加到頂部答覆:CTRL + /很不錯,因爲它在所有選定行的開頭添加和刪除#之間來回切換。沒有看到提到的確切細節,所以只是想在這裏添加它。 (這在Windows 7上的Firefox Developer Edition 54.0b12中有效)。

0

另一件需要補充的是,在我使用的版本中,代碼必須進行初始化才能使用CTRL和/來註釋它。如果你還沒有運行代碼,並且代碼沒有着色,它就不會工作。

7

嘗試使用數字鍵盤中的/Ctrl + /在Chrome中不適用於我,但是當我使用/從它的工作。

+0

爲什麼會發生這種情況? – xmduhan

0

如果您有Mac而不是英文鍵盤: Cmd- /仍然很容易製作。

遵循以下步驟:

  1. 剛進入Mac的系統設置,鍵盤選項卡「輸入源」或不管它可能在英語
  2. 添加被稱爲一個英語(顯示爲ABC,拼寫英文的奇怪方式)。

每當你想一個CMD- /,你必須(在屏幕的頂部在你的菜單行,如果你滴答它在System Settings - Keyboard tab中顯示有)更改爲ABC鍵盤。

Cmd和右邊的「shift key」左邊的鍵給你Cmd- /。

P.S:不要忘記切換回正常的鍵盤。

0

選擇您要註釋掉的行。然後按:

Ctrl + #

0

搜索過了一會兒,我已經找到了解決方案上的AZERTY MAC發表評論。快捷鍵是Ctrl +/= key

相關問題