【发布时间】:2021-01-23 16:34:41
【问题描述】:
我遇到了一个有趣的错误。在函数范围之外定义列表时,如下所示,会导致错误:UnboundLocalError: local variable 'a' referenced before assignment
def main():
a = []
def sub():
a += ["hello"]
return a
sub()
main()
但是,如果使用相同的逻辑,a.append 不会引发错误
def main():
a = []
def sub():
a.append("hello")
return a
sub()
main()
这有什么原因吗?
谢谢
【问题讨论】:
标签: python-3.x