以下代碼片斷說明了在Python 3中使用JSON的幾個方面。請注意JSONEncoder類以及編碼decimal和datetime的實現。
import json
from decimal import Decimal
from datetime import datetime, date
class JSONEncoder(json.JSONEncoder):
def default(self, o):
if isinstance(o, Decimal):
return float(o)
elif isinstance(o, (datetime, date)):
return o.isoformat()
return super().default(self,o)
class JSONDecoder(json.JSONDecoder):
pass
_Default_Encoder = JSONEncoder(
skipkeys=False,
ensure_ascii=False,
check_circular=True,
allow_nan=True,
indent=None,
separators=None,
default=None,
)
_Default_Decoder = JSONDecoder(
object_hook=None,
object_pairs_hook=None
)
Encode = _Default_Encoder.encode
Decode = _Default_Decoder.decode
回覆:[best-practice]標記:http://meta.stackexchange.com/questions/60118/tag-block-request-best-practice – 2011-02-03 02:48:16
啊哈,我想這將是一個相當無用的標記回顧。 – dimo414 2011-02-03 02:54:46