我想知道以下Python代码段中变量a
的范围,
# ============================
def get_plotter():
def get_a():
return a
a = 3.14
return get_a
# ============================
if __name__ == '__main__':
f = get_plotter()
print f()
# ============================
输出为3.14
,但是当a
终止时,查看我希望get_plotter()
超出范围的代码,实际上会留下未定义的内容。
是否只是在这里打印的易失性存储器内容?发生了什么事?