标题应该说明一切。这是一个例子:
class Example():
def function(self):
exec("self.a = 'Hello'")
exec("b = 'World'")
print(self.a)
print(b)
然后当我调用函数Example()function()
时,它返回:
Hello
(...)
NameError: name 'b' is not defined
有人可以解释为什么 b 没有定义,但 self.a 是?