我正在實現我自己的JSONEncoder來完全按照我需要的方式處理不同的類。不幸的是,我的自定義編碼器返回的格式不正確。它們被引號包圍,某些字符(引號)被轉義。自定義JSONEncoder返回格式不正確
請使用下面的代碼來重現問題:
import json
class CustomEncoder(json.JSONEncoder):
def default(self, givenObject):
#for testing purposes this always returns the same string
str = '{"id":0,"name":"Peter"}'
return str;
class AnyClass(object):
pass
encoder = CustomEncoder()
dummyClass = AnyClass()
#expected output: {"id":0,"name":"Peter"}
print encoder.encode(dummyClass)
#output: "{\"id\":0,\"name\":\"Peter\"}"
我使用Python 2.7。
如何防止此行爲?我做錯了什麼?
非常感謝,我一定錯過了這部分。由於更正的代碼和文檔鏈接,我將您的答案標記爲正確答案。 – MOnsDaR