【问题标题】:Ipython Notebook: use of different cell for one functionIpython Notebook:为一个功能使用不同的单元格
【发布时间】:2013-04-03 15:42:12
【问题描述】:

我正在使用 ipython 笔记本。为了评论我的函数,我想在我的函数定义中插入一个降价。但是在第二个代码单元中,它开始与我之前写的内容无关。

例子:

  • 单元 1:
    def my_function(一,二): 我=0
  • 降价:
    i 用于索引
  • 单元 2:
    i+=2

首先我有一个“IndentationError: unexpected indent”,其次是一个“NameError: name 'i' is not defined

【问题讨论】:

  • 您预计会发生什么?每个单元格都必须是 Python 代码的可执行 sn-p。您可以将 Markdown 文档移到函数上方,也可以只使用普通的 cmets。

标签: ipython-notebook


【解决方案1】:

IPython 笔记本中的每个单元格都必须是独立的并且单独运行。 当您进入第一个单元格时,您实际上完全定义了my_function,只有一行的正文。 i=0 在你的情况下。无法在定义函数后向函数添加代码。在 (I)Python 提示符中输入一些内容时也是如此。您没有跨多个输入查询定义函数。

至于为什么 i 在 undefined 中,是因为 i 的范围仅限于函数,但这在大多数编程语言中是经典的。

因此,不要将 IPython 笔记本视为带有 markdown 的全文文件,而应将其视为在每个单元格中要做的不同事情,并按顺序执行。

【讨论】:

    猜你喜欢
    • 2013-04-29
    • 2016-03-27
    • 1970-01-01
    • 1970-01-01
    • 2013-10-28
    • 1970-01-01
    • 2014-07-23
    • 1970-01-01
    相关资源
    最近更新 更多