Как я могу читать в списках внутри списка, используя ConfigParser () в Python? - PullRequest
0 голосов
/ 11 апреля 2020

Я видел много ответов о том, как читать в списке с помощью ConfigParser в Python:

Но мне интересно, как я могу читать в списке с несколькими списками

Например, у меня есть config.ini :

[INPUT]
values = [[40000, 60000], [70000, 80000]]

Функция в моем main.py должна выглядеть так:

[[40000, 60000], [70000, 80000]]

Я не уверен, имеет ли это значение, но значения могут быть любого размера списка, например:

[[40000, 60000]]

или

[[40000, 60000], [70000, 80000], [90000, 95000]]

Я знаю, что ниже не будет работать, но для ясности, я читаю списки в списке в main.py вот так:

self.values = config['INPUT']['values']

self там, потому что я использую класс. Это мои объявления в начале main.py :

import configparser
config = configparser.ConfigParser()
config.sections()
config.read('config.ini')

1 Ответ

1 голос
/ 11 апреля 2020

Вы можете сохранить список (или список списков или диктовку или что-то еще) в виде строки и использовать ast для его восстановления.

Конфиг:

[INPUT]
values = [[40000, 60000], [70000, 80000]]

И сценарий (упрощено, поскольку чтение строковой переменной из конфигурации не является проблемой):

import ast
list_in_list = ast.literal_eval(string_var_read_from_config)
...