我有一个存储数据的文件,如下所示:
[(4, u'name1'), (7, u'name2'), (10, u'name3'), (17, u'name4')]
现在,如果我读取文件,该数据将读取为字符串。我想将其转换为显示的元组列表。喜欢,
[(4, u'name1'), (7, u'name2'), (10, u'name3'), (17, u'name4')]
如果我使用list(data)
它给我像:
['[', '(', '4', ',', ' ', 'u', "'", 'n', 'a', 'm', 'e', '1', "'", ')', ',', ' ', '(', '7', ',', ' ', 'u', "'", 'n', 'a', 'm', 'e', '2', "'", ')', ']']
做这个的最好方式是什么?
我建议使用ast.literal_eval
。这是优先于eval
。
>>> s = "[(4, u'name1'), (7, u'name2'), (10, u'name3'), (17, u'name4')]"
>>> from ast import literal_eval
>>> literal_eval(s)
[(4, 'name1'), (7, 'name2'), (10, 'name3'), (17, 'name4')]
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句