@Kostyan4ik

Как распарсить списки в строке?

Добрый день. Мне нужно распарсить строку, содержащую списки в списки. Вот примерное содержание строки:
[
[1, "Иван Иванович Иванов", "Иванов И.И."],
 [2, "Макар Макарович Макаров", "Макароы М.М."]
]

Это конечно можно сделать регулярными выражениями, но возможно есть другие, более гуманные способы. Подскажите, есть ли другие варианты как это можно сделать?
  • Вопрос задан
  • 94 просмотра
Решения вопроса 2
fox_12
@fox_12 Куратор тега Python
Расставляю биты, управляю заряженными частицами
Если правильно понял - то вот более гуманный способ:
import ast

data = '''[
  [1, "Иван Иванович Иванов", "Иванов И.И."],
  [2, "Макар Макарович Макаров", "Макароы М.М."]
 ]'''
res = ast.literal_eval(data)
# [[1, 'Иван Иванович Иванов', 'Иванов И.И.'], [2, 'Макар Макарович Макаров', 'Макароы М.М.']]
type(res)
# <class 'list'>
Ответ написан
@Kostyan4ik Автор вопроса
Ответ уже нашел:
exec(f'a = {*список строкой*}')
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы