技術(shù)頻道導(dǎo)航
HTML/CSS
.NET技術(shù)
IIS技術(shù)
PHP技術(shù)
Js/JQuery
Photoshop
Fireworks
服務(wù)器技術(shù)
操作系統(tǒng)
網(wǎng)站運(yùn)營(yíng)

贊助商

分類目錄

贊助商

最新文章

搜索

Python使用DjangoJSONEncoder或json_util把日期時(shí)間序列化為JSON

作者:admin    時(shí)間:2021-12-31 10:14:40    瀏覽:

Python把日期時(shí)間序列化為JSON的方法有很多,前面分別介紹過兩種方法Python將日期時(shí)間DateTime序列化為JSON編寫自定義方法將日期時(shí)間轉(zhuǎn)為JSON,本文中,將介紹Python如何使用DjangoJSONEncoder或json_util把日期時(shí)間序列化為JSON。

 v
Python編寫自定義方法將日期時(shí)間轉(zhuǎn)為JSON

使用 DjangoJSONEncoder

如果你使用的是 Django,則可以利用 DjangoJSONEncoder 序列化程序來(lái)序列化dateTime。

import json
import datetime
from django.core.serializers.json import DjangoJSONEncoder

employee = {
    "id": 456,
    "name": "William Smith",
    "saley": 8000,
    "joindate": datetime.datetime.now()
}

print("JSON Data")
print(json.dumps(employee, cls=DjangoJSONEncoder))

輸出:

JSON Data
{"id": 456, "name": "William Smith", "salary": 8000, "joindate": "2020-01-08 18:39:30.161488"}

使用 json_util

該bson模塊具有 json_util 類,我們可以直接使用它來(lái)把dateTime轉(zhuǎn)換為 JSON,而無(wú)需進(jìn)行任何顯式轉(zhuǎn)換。

讓我們看看例子。

import json
import datetime
from bson import json_util

employee = {
    "id": 456,
    "name": "William Smith",
    "salary": 8000,
    "joindate": datetime.datetime.now()
}

jsonData = json.dumps(employee, default=json_util.default)
print(jsonData)

jsonData = """{"id": 456, "name": "William Smith", "saley": 8000, "joindate": "2020-01-08T15:29:52.040435"}"""

# Deserialization
decodedJson = json.loads(jsonData, object_hook=json_util.object_hook)

輸出:

JSON Data
{"id": 456, "name": "William Smith", "salary": 8000, "joindate": "2020-01-08 18:39:30.161488"}

有關(guān)日期時(shí)間轉(zhuǎn)換JSON的問題,也可看看這兩篇文章:兩種方法Python將DateTime序列化為JSON,編寫自定義方法將日期時(shí)間轉(zhuǎn)為JSON。

您可能對(duì)以下文章也感興趣

 

標(biāo)簽: Python  
x
  • 站長(zhǎng)推薦
/* 左側(cè)顯示文章內(nèi)容目錄 */