Skip to main content
 首页 » 编程设计

python之如何使用 configparser 跳过配置文件中的部分

2025年05月04日14xing901022

我编写了一段代码,其中的参数取自配置文件。 我在配置中的第一个参数用于设置调试级别。

    config = ConfigParser.RawConfigParser() 
    config.read('config.cfg') 
    log_level = config.get('Logger','log_level' ) 

配置中还有其他部分,它提供了服务器 IP 和密码以扫描每个部分。

主要代码:

for section in config.sections(): 
    components = dict() #start with empty dictionary for each section 
    env.user = config.get(section, 'server.user_name') 
    env.password = config.get(section, 'server.password') 
    host = config.get(section, 'server.ip') 

来 self 的配置

[Logger] 
#Possible values for logging are INFO, DEBUG and ERROR 
log_level = DEBUG 
 
[server1] 
server.user_name = root 
server.password = password 
server.ip = 172.19.41.21 
[server2] 
server.user_name = root 
server.password = password 
server.ip = 172.19.41.21 

现在我的代码要求检查每个部分以检索用户名和密码。由于第一部分不包含这些值,因此它失败了。我如何检查每个部分的用户名和密码,如果不存在,请转到下一部分。我尝试检查 NONE 并转到下一部分。但是那个代码很丑陋而且它失败了。像这样:

if env.user=='': 
        next 

有人可以帮助我进行下一步吗?

请您参考如下方法:

将此代码添加到 for 循环的开头:

if not config.has_option(section, 'server.user_name'): 
    continue