Python 如何解决pyhon错误:局部变量';x';分配前参考

Python 如何解决pyhon错误:局部变量';x';分配前参考,python,global-variables,local-variables,Python,Global Variables,Local Variables,如果使用此代码,则If total>max\n:中存在错误 即使全局变量max\n在第1行,为什么会发生此错误 你能教我如何调试这个错误案例吗?我已经遇到了这样的问题, 这是因为函数只搜索函数中的变量。 请尝试以下代码: global max_n max_n = 0 def dfs(_n, cnt, length): if cnt == length: print(a) total = 0 for i in range(cnt):

如果使用此代码,则
If total>max\n:
中存在错误

即使全局变量
max\n
在第1行,为什么会发生此错误


你能教我如何调试这个错误案例吗?

我已经遇到了这样的问题, 这是因为函数只搜索函数中的变量。 请尝试以下代码:

global max_n
max_n = 0

def dfs(_n, cnt, length):
    if cnt == length:
        print(a)
        total = 0
        for i in range(cnt):
            total += int(a[i]) * (10 ** i)
        if total % 30 == 0:
            if total > max_n:
                max_n = total

您在哪里初始化了
a
?哪些值用于
\n、cnt、length
?代码返回
名称错误:未定义名称“a”
。如果您在其他地方定义了
a
,您应该在代码中显示它,并提供如何调用此函数。这就是我想要的!非常感谢你!!我很高兴能够帮助您:)
max_n = 0

def dfs(_n, cnt, length):
    global max_n
    if cnt == length:
        print(a)
        total = 0
        for i in range(cnt):
            total += int(a[i]) * (10 ** i)
        if total % 30 == 0:
            if total > max_n:
                max_n = total