使用python写一个程序:配置文件set.ini,读取set.ini中的module字段,判断每个module=0的类型,并执行同目录下的与module名称相同的py文件
时间: 2024-03-02 12:54:17 浏览: 17
好的,以下是代码实现:
```python
import configparser
import importlib.util
import os
# 读取配置文件
config = configparser.ConfigParser()
config.read('set.ini')
# 遍历所有section
for section in config.sections():
# 获取module字段的值
module_value = config.get(section, 'module')
# 判断module是否为0
if module_value == '0':
# 获取同名的py文件路径
module_path = os.path.join(os.path.dirname(__file__), f'{section}.py')
# 判断文件是否存在
if os.path.exists(module_path):
# 动态导入模块
module_spec = importlib.util.spec_from_file_location(section, module_path)
module = importlib.util.module_from_spec(module_spec)
module_spec.loader.exec_module(module)
else:
print(f'{section}.py文件不存在')
```
其中,`set.ini`文件的格式如下:
```
[section1]
module = 1
[section2]
module = 0
[section3]
module = 0
```
其中,`module`字段为0表示需要执行同名的py文件,为1表示不需要执行。程序会遍历所有的section,判断module字段是否为0,如果是,则会动态导入同名的py文件并执行。如果同名的py文件不存在,则会输出错误提示。