验证错误:从外部范围重新定义外部名称

时间:2015-03-03 22:19:33

标签: python python-3.x scope pylint

我不确定是否得到了这个但是我从pyLint得到了验证错误:

Redefining name 'a' from outer scope (line 443) (redefined-outer-name)
Redefining name 'b' from outer scope (line 444) (redefined-outer-name)

代码是这样的:

a = 98  # line 443
b = 90  # line 444

def prodNr(a, b):
    """Definiera prodNr"""
    return a * b

result = prodNr(a, b)

ANSWER = result

有谁能请给我一个如何摆脱验证错误的线索?

1 个答案:

答案 0 :(得分:3)

将变量称为其他内容:

def prodNr(a, b):
    """
    Definiera prodNr
    """

    return a * b
i = 98
j = 90
result = prodNr(i, j)

您可以对传递的变量使用任何名称,而不必将其称为ab。它不会影响您的代码,因为变量会传递给函数,如果您在代码中的多个位置都有a和b并且您决定将a更改为var_a,则会出现问题但忘了在一两个地方改变它,那么你会得到不同的输出到你期望的。