让我们看看我有下面的Python脚本script.py
:
a = 1
b = 10
for i in range(b):
a += 1
print(a)
我知道我可以在这个script.py
中使用globals()
来显示名称空间:
{'__file__': 'counter.py', '__doc__': None, 'i': 9, '__spec__': None, '__loader__': <_frozen_importlib_external.SourceFileLoader object at 0x0000027C8D9402E8>, '__name__': '__main__', '__cached__': None, 'b': 10, 'a': 11, '__package__': None, '__builtins__': <module 'builtins' (built-in)>}
我想知道你是否能在script.py
之外模仿globals()
?换句话说,我想运行other_script.py
并查看script.py
的globals()
输出。import counter
有用吗
编辑:如果可能的话,script.py
的globals
输出能否随着for循环中i
的每个增量而更新
import counter
的问题是counter.py中的名称空间将更改为当前名称空间,因为您正在当前名称空间中导入它但是,如果您只想看到counter.py输出,则可以使用
exec()
函数分别执行它。这不会更改其命名空间示例:
在counter.py中:
在其他脚本.py中:
相关问题 更多 >
编程相关推荐