首页 > 解决方案 > 如何在 python 中读取主题标签?

问题描述

我正在尝试读取一个配置文件,例如:

[servers]
    [germany]
        test=1
        safd=134i
    [at]
        ip=asfd

我正在尝试解析配置

import configparser

p = configparser.ConfigParser()

print ("p.read: \t", p.read('config.cfg'))
print ("secions: \t", p.sections())
for i in p.sections():
    print(i)

输出:

p.read:          ['config.cfg']
secions:         ['servers', 'germany', 'at']
servers
germany
at

我想浏览这些部分和子部分,比如

for i in p.sections(): 
  print(i.[0][1]) 

或类似的东西。

配置文件错了吗?我的意思是我怎么能在python中处理这个?

谢谢。

标签: pythonconfiguration-files

解决方案


configparser模块用于解析 INI 文件,而INI 文件不是分层的,因此配置文件中的缩进被简单地忽略了。

如果您可以控制配置文件的格式,则最好使用JSONYAML

可以使用json标准库中的模块解析 JSON。

YAML 可以使用 3rd 方pyyaml包(您需要使用 安装pip)进行解析,该包具有与模块类似的 API,json并且可以使用import yaml.


推荐阅读