1

我在 Python 中使用 ConfigObj 从我的配置文件中读取。我需要从配置文件中读取列表列表。这是我到目前为止所尝试的:

  1. 部分和小节 - 创建字典,而不是列表
  2. list_of_lists = (1, 2, (3, 4))-ConfigObj将所有内容视为字符串,并生成列表['(1', '2', '(3', '4))']

我想要(在 Python 上下文中)是这样的: list_of_lists = [1, 2, [3, 4, ]]

有人可以建议一种方法吗?我也对替代品持开放态度。提前致谢。

4

3 回答 3

1

这是使用 configparaser 的另一种方法

# Contents of configfile
[section1]
foo=bar
baz=oof
list=[1,2,[3,4,]]

获取列表列表的代码:

import configparser
import ast
cfg = configparser.ConfigParser()
cfg.read_file(open('configfile'))
s1 = cfg['section1']
list_of_lists = ast.literal_eval(s1.get('list')
print list_of_lists

# output
# [1, 2, [3, 4]]
于 2017-04-12T14:37:52.047 回答
0

我只是用这种方式解决了它configobj

初始化: config/test.ini

[List]
AA = aa,bb
BB = cc,dd

Python: main.py

# Read a config file
from configobj import ConfigObj
config = ConfigObj('.\config\test.ini')

print(config['List'])
print(config['List']['AA'])
print(config['List']['BB'])
于 2021-09-06T15:05:31.993 回答
0

尝试这个,

# Read a config file
from configobj import ConfigObj
config = ConfigObj(filename)

# Access members of your config file as a dictionary. Subsections will also be dictionaries.

value1 = config['keyword1']
value2 = config['section1']['keyword3']

请参阅ConfigObj 文档

于 2017-04-12T13:43:09.690 回答