Python中的对象表示

时间:2012-04-06 20:30:02

标签: python string object representation

我想要一个python对象的字符串表示。我曾经和着名的泡菜一起做过,但我想知道它是否存在更好,更便宜的东西。我不喜欢使用repr和eval,因为它们不安全。

3 个答案:

答案 0 :(得分:1)

YAML是一种相当不错的格式,用于序列化数据结构。它就像JSON,但更是如此。 PyYAML库工作得很好。除了让它猜测如何序列化数据结构之外,您还可以获得相当具体的信息。有关示例,请参阅完整文档。

答案 1 :(得分:1)

使用repr()获取字符串表示,使用ast.literal_eval()恢复对象。

或者只是使用泡菜。如果你使用的是Python 2.x,你可以import cPickle获得更快的泡菜,但是在Python 3.x中只有一个pickle而且它是C语言。

就个人而言,我喜欢将JSON用于简单对象;您可以尝试import json并查看它是否适合您。

答案 2 :(得分:0)

通过对象表示,如果您的意思是序列化,则pickle是一个选项。如果您想要更快的实施,请尝试cPickle