将docstrings作为IPython中的代码行

时间:2018-08-13 05:35:25

标签: python ipython jupyter-notebook

我注意到代码行从文档字符串的结尾处开始。

但是由于它指向的行与错误调用行实际所在的行不同,因此它在错误跟踪中带来了问题。

以下是一个简单的示例来证明这一点:

#comments
#comments
#comments
#comments
#comments
#comments
def divide(a,b):
  a = int(a)
#convert a to an integer
  b = int(b)
#convert b to an integer
  res = a/b
#calculate result  
  return res

divide(2,0)
  

错误

ZeroDivisionError                         Traceback (most recent call last)
<ipython-input-56-030e2eec799d> in <module>()
----> 1 divide(2,0)

<ipython-input-55-9cd1ccec09c4> in divide(a, b)
      4   b = int(b)
      5 #convert b to an integer
----> 6   res = a/b
      7 #calculate result
      8   return res

ZeroDivisionError: division by zero

错误指向第6行,而实际位置为12

有什么解决办法吗?

1 个答案:

答案 0 :(得分:0)

由于您没有执行全部运行,因此请尝试执行以下操作:

img

(哈哈,抱歉,我的笔迹不好)

输出:

enter image description here