我正在尝试解析包含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 \ x99minou 23archiefdingen',u'chicago,il')
请注意,unicode不在utf-8中,它是python的本机编码。
如何正确地将这些行解析回原始元组(不会弄乱编码)? (我正在使用python 2.7)
答案 0 :(得分:2)
>>> ast.literal_eval("""(u'bretagne tr\xe9minou 23archiefdingen', u'chicago, il')""")
(u'bretagne tr\xe9minou 23archiefdingen', u'chicago, il')
但下次使用JSON。