2013-04-11 28 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笔记本看作带有降价的全文本文件,而应该将其视为每个单元格中不同的事情,然后按顺序执行。

相关问题