python - Python 全局变量混淆
问题描述
这是我的代码,我很困惑为什么会出现异常local variable "final" referenced before assignment
。我试图将它声明为全局dfs
函数,但仍然没有帮助。我想知道为什么函数vistited
正确引用了它,dfs
而final
没有。
def movingCount(self, m, n, k):
def calculate(x, y):
x_str = str(x)
y_str = str(y)
result = 0
for i in x_str:
result += int(i)
for j in y_str:
result += int(j)
return result
vistited = [[0]*n for _ in range(m)]
final = 0
def dfs(x, y):
print(vistited, final)
if x == m or y == n or calculate(x, y) > k:
return
else:
vistited[x][y] = 1
final += 1
dfs(x+1, y)
dfs(x, y+1)
dfs(0, 0)
return final
解决方案
推荐阅读
- ios - 如何使用 Swift 从 Xcode 中的代码访问预处理器宏?
- node.js - 如何在收件人时区发送 FCM 通知?
- mongodb - 如何在mongodb中比较没有时间的日期
- c# - 如何从 php web-service 向 C# 应用程序返回值
- java - 如何使用 Spring 和 thymeleaf 创建多页 pdf
- postgresql - 卡住超时问题。这是 Query ,我正在超时:
- python - Numpy 和 Matplotlib - AttributeError: 'numpy.ndarray' 对象没有属性 'replace'
- android - 滚动到选中的菜单项
- c - C:处理 24 位 2 的补码的正确方法
- c++ - 为什么带有 ROI 的 copyto 会产生空白结果?