pyson,格式错误的节点或字符串 literal_eval

pyson, malformed node or string with literal_eval

我正在使用 repr()ast.literal_eval() 作为 json.dumps()json.loads() 的替代方法。

一个简单的 ast.literal_eval(repr(m)),其中 m 是一个普通的 dict() 充满 str(),其他 dict()set() 对象,失败并显示错误:

ValueError: malformed node or string: <_ast.Call object at 0x7fe3eae74240>

我如何调试它并获得有关错误的更多信息?

set() 是完全有效的 ast.literal_eval() 条目,除非它们为空!

一个空的 set() 将被表示为一个构造函数,因为没有专门的文字({} 是一个空的 dict()),并且构造函数无法被计算。

我会尝试调整在这里找到的钩子:https://gist.github.com/philipbjorge/5166022