我希望能够解码看起来像JSON的格式,但可以处理十六进制内容。我们称之为JSHON。例如内容:使用json模块解码类似JSON的对象
{
"nine": 9,
"ten": 0xA,
"eleven": 11
}
是否容易哄the stdlib json module提供这样的能力,或者我应该用别的东西。
我希望能够解码看起来像JSON的格式,但可以处理十六进制内容。我们称之为JSHON。例如内容:使用json模块解码类似JSON的对象
{
"nine": 9,
"ten": 0xA,
"eleven": 11
}
是否容易哄the stdlib json module提供这样的能力,或者我应该用别的东西。
简单的解决办法是使用ast.literal_eval
,
>>> data = '''
... {
... "nine": 9,
... "ten": 0xA,
... "eleven": 11
... }
... '''
>>> import ast
>>> ast.literal_eval(data)
{'eleven': 11, 'nine': 9, 'ten': 10}
哇,这比我希望的要容易得多:) – Tshepang
但要小心,因为'null'(JSON解码器会解释为None)的值会导致它失败... – Ben