В моих файлах журналов есть несколько многострочных байтов, например
[2019-05-25 19:16:31] b'logstring \ r \ n \ r \ nmore log '
После того, как я попытаюсь извлечь исходную многострочную строку, как мне преобразовать ее в реальную строку, используя Python 3?
В качестве упрощенного примера, после прочтения файла журнала и сокращения времени, я получаюпеременная с типом str и префиксом b 'в виде строки.
# note: b'' is inside the str (taken from log)
tmp = "b'logstring\r\n\r\nmore log'"
# convert here
print(tmp)
Я ищу способ сообщить Python, что контент должен быть декодирован.Но str не разрешает декодирование.
Результат, который я хотел бы видеть из команды печати:
logstring
more log
ОБНОВЛЕНИЕ: функция "eval" выдаст этот результат, но этовыполнит код, так что это небезопасно.
# note: b'' is inside the str (taken from log)
tmp = "b'logstring\r\n\r\nmore log'"
tmp = eval(tmp)
print(tmp)
Есть ли лучший способ?