关于迭代本地人

时间:2015-11-11 10:46:43

标签: python-2.7

在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仍然如何存储?本地实际上不存储变量,还是只是引用?

0 个答案:

没有答案