在python中,通常运行for i in s:
来迭代字符串s。也可以使用local函数访问变量。
s = "qwer"
for i in s:
print i
del locals()['s']
我希望这段代码应该打印“q”,然后删除变量s,这样我们下次在s中评估i就会导致错误。不应该解析i变量。但是,此代码段的输出是打印q然后打印w,然后出现键错误。因此,locals字典没有s变量。因此,唯一的问题是当我们第二次通过循环调用locals字典时。即使我们从locals变量中删除它,s仍然如何存储?本地实际上不存储变量,还是只是引用?