一、储备知识exec

  储备知识exec:有下面三个参数

  参数一:字符串形式的命令
  参数二:全局作用域(字典形式),如果不指定默认使用globals()
  参数三:局部作用域(字典形式),如果不指定默认就使用locals()

# 格式:exec(object, globals, locals)
# 可以把exec命令的执行当成是一个函数的执行,会将执行期间产生的名字存放于局部名称空间中
g = {
    'x':1,
    'y':2
}

l = {}

exec("""
global x,z
x=100
z=200

m=300
""", g, l)

print(g)  # {'x': 100, 'y': 2,'z':200,......}

print(l)  # {'m': 300}
exec(object, globals, locals)

相关文章: