我希望能夠解碼看起來像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