是否可以配置Python解释器以提供有关错误的更多有用信息?

时间:2017-09-20 05:04:06

标签: python exception indexoutofboundsexception

例如,可以“IndexError:list index out of range”实际上说哪个变量导致错误的值和绑定是什么?例如。而不是裸露

a[i][j] += max(a[i][j-d], a[i-1][j])
IndexError: list index out of range

得到这个:

IndexError: list index out of range: j-d=250 for expected range of [0:250]

这可能会缩短最普通的开发过程,否则我会浪费在回溯代码或插入print语句来获取此类信息。

1 个答案:

答案 0 :(得分:0)

您可以使用库better_exceptions

import better_exceptions

a = [[1, 2], [3, 4]]
i, j, d = 1, 350, 100
a[i][j] += max(a[i][j-d], a[i-1][j])

better_exceptions output

这不是你要求的(better_exceptions只显示所有变量值,错误消息不是更明确),但我认为这是一个好的开始。