循环中动态用importlib.import_module导入另一个py文件的全局变量
时间: 2023-10-25 12:08:08 浏览: 145
可以使用 `globals()` 函数来获取全局变量字典,然后将导入的模块中的变量添加到该字典中。例如,假设你想在循环中动态导入模块 `module1` 的变量 `var1`,可以按照以下方式实现:
```python
import importlib
for i in range(5):
module_name = f"module{i}"
module = importlib.import_module(module_name)
globals().update({f"var{i}": module.var1})
```
这将在全局命名空间中定义变量 `var0` 到 `var4`,并将它们分别设置为 `module0.var1` 到 `module4.var1` 的值。注意,这种方法不会在局部作用域中定义变量,因此你需要在循环外部定义它们或者使用 `global` 关键字声明它们。
阅读全文