簡體   English   中英

Python序列化錯誤

[英]Python serialization Error

當我的python代碼試圖將字典對象轉換為Json字符串時,它拋出以下異常:

SerializationError: ({'status': 'rd', 
'name': 'Detecci\xf3nInt/.unclassified.ez', 'st': 0}, 
UnicodeDecodeError('utf8', 'Detecci\xf3nInt/.unclassified.ez', 7, 8, 
'invalid continuation byte'))

請提供解決此問題的任何提示。

默認情況下, json.dump()使用UTF8編碼,但字典中name鍵的值不是UTF8。 它看起來像ISO-8859-X編碼之一。 您可以使用encoding參數指定encoding

import json
d = {'status': 'rd', 'name': 'Detecci\xf3nInt/.unclassified.ez', 'st': 0}
s = json.dumps(d, encoding='ISO-8859-1')
print(s)

產量

{"status": "rd", "name": "Detecci\u00f3nInt/.unclassified.ez", "st": 0}

我對使用哪種編碼有一點猜測,因此您可能想要檢查哪種編碼對您的數據是正確的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM