我有以下Python代码:UnboundLocalError嵌套函数的递归调用
当我运行它,我得到以下错误:
Traceback (most recent call last):
File "ExtendPrefix.py", line 44, in <module>
print find_words("ABCDEFGH")
File "ExtendPrefix.py", line 41, in find_words
extend_prefix('', letters)
File "ExtendPrefix.py", line 38, in extend_prefix
result = extend_prefix(w + L, letters.replace(L, "", 1))
File "ExtendPrefix.py", line 38, in extend_prefix
result = extend_prefix(w + L, letters.replace(L, "", 1))
File "ExtendPrefix.py", line 35, in extend_prefix
if w in WORDS: results.add(w)
UnboundLocalError: local variable 'results' referenced before assignment
它显然无法找到结果递归调用extend_prefix。为什么会这样,我该如何解决它?
我意识到我不应该因为我正在走狗而设定结果。下一次,我应该在发布问题之前遛狗! – 2012-08-14 00:50:11
我以前做过很多次相同的事情。在电脑屏幕前几小时后,我经常需要休息一下来处理我一直在学习的内容:) – 2012-08-14 00:55:07