使用python写一个程序:配置文件set.ini,读取set.ini中的module字段,判断每个module=0的类型,并执行同目录下的与module名称相同的py文件
时间: 2024-02-17 09:01:42 浏览: 17
好的,我可以帮你解决这个问题。以下是Python代码实现:
```python
import configparser
import importlib.util
import os
# 读取配置文件set.ini
config = configparser.ConfigParser()
config.read('set.ini')
# 遍历每个module字段
for module_name in config.sections():
# 判断module值是否为0
if config.get(module_name, 'module') == '0':
# 获取同名的.py文件路径
module_path = os.path.join(os.path.dirname(__file__), module_name + '.py')
# 如果文件存在,动态导入并执行
if os.path.exists(module_path):
spec = importlib.util.spec_from_file_location(module_name, module_path)
module = importlib.util.module_from_spec(spec)
spec.loader.exec_module(module)
else:
print(f"Error: {module_name}.py not found.")
```
该程序首先读取配置文件set.ini,然后遍历每个section,判断对应的module字段是否为0。如果是0,则获取同名的.py文件路径,如果文件存在,则动态导入并执行。如果文件不存在,则打印错误信息。
注意:本程序使用了Python标准库中的configparser、importlib和os模块,使用前需要先导入。同时,本程序假设同名的.py文件在程序当前目录下,如果不是,请根据实际情况修改module_path的路径。