Я пытаюсь обработать набор данных с данными JSON. Однако данные были записаны в файл без анализа. Это означает, что словарь python записывается в файл как строка вместо объекта JSON в виде строки.Python ast.literal_eval в строке словаря не работает (SyntaxError: недопустимый синтаксис)
Я нашел модуль (AST), который выполнит задание, чтобы преобразовать строку в словарь снова, используя функцию ast.literal_eval
.
Однако, я получаю очень странные ошибки в некоторых случаях:
код считывает из текстового файла и примените следующие к каждой строке:
ast.literal_eval(line.rstrip())
Кажется, что некоторые из символов не в порядке с модулем AST.
Необходимо также вспомнить, что этого не происходит со всем набором данных, просто с некоторыми примерами.
Любые идеи?
Большое спасибо заранее.
Hi priyank. Спасибо за ваш ответ. Однако это не сработает. Как я сказал в сообщении, «данные были записаны в файле без разбора». Это означает, что кто-то написал в файл dict без того, чтобы разбираться с JSON раньше. Поэтому использование 'json.loads (inputStr)' не будет работать. Вот почему мне нужен аст. literal_eval. – Salias