2013-04-11 156 views
0

我正在使用ipython筆記本。爲了評論我的功能,我想在我的函數的定義中插入一個markdown。但是在第二個代碼單元中,它開始就像我之前編寫的代碼沒有任何關係。Ipython筆記本:爲一個功能使用不同的單元格

實施例:

  • 小區1:
    DEF創建my_function(一個,兩個): I = 0
  • 減價:
    i是使用了索引
  • 小區2:
    I + = 2

首先我有一個'IndentationError:unexpected縮進',其次'NameError:名稱'i'未定義

+0

你預計會發生什麼?每個單元必須是Python代碼的可執行代碼片段。你可以將你的markdown文檔移動到函數上面,或者使用正常的註釋來代替。 – filmor 2013-04-11 12:42:10

回答

3

IPython筆記本中的每個單元必須是獨立的,並單獨運行。 當你將進入第一個單元格時,實際上完全定義了my_function只有一行的主體。 i=0你的情況。在函數定義後添加代碼是不可能的。在(I)Python提示符中輸入somethig時,這也是一樣的。您不需要在輸入的多個查詢中定義函數。

至於爲什麼i未定義,是因爲i的範圍僅限於該函數,但這在大多數編程語言中都是經典的。

所以,不要將IPython筆記本看作帶有降價的全文本文件,而應該將其視爲每個單元格中不同的事情,然後按順序執行。

相關問題