Как разобрать "stringified" объекты Python из файла обратно в объекты Python? - PullRequest
0 голосов
/ 27 июня 2011

Я пытаюсь проанализировать файл, который содержит строковые представления объектов Python.Как в

outfile = open("out.txt", "w")
example_string_tuple = (u'bretagne tr\xe9minou 23archiefdingen', u'chicago, il')

# Instead of doing something like this:
outfile.write("\t".join(example_string_tuple).encode("utf-8"))

# I just did this:
outfile.write(str(example_string_tuple))

Так что теперь в моем текстовом файле есть строки, которые выглядят следующим образом

(u'bretagne tr \ xe9minou 23archiefdingen ', u'chicago, il')

Обратите внимание, что юникод не в utf-8, а в нативной кодировке python.

Как правильно разобрать эти строки, как эта, в исходные кортежи (не путая кодировку)?(Я использую Python 2.7)

1 Ответ

2 голосов
/ 27 июня 2011
>>> ast.literal_eval("""(u'bretagne tr\xe9minou 23archiefdingen', u'chicago, il')""")
(u'bretagne tr\xe9minou 23archiefdingen', u'chicago, il')

Но в следующий раз используйте JSON .

...