使用 python 序列化時,通常使用 json.dumps()生成 json,但是會在key和value之間默認給你加上一個空格。傳參時可能會應為這個空格導致服務端解析失敗。
之前做接口測試時,就遇到這個問題,本來是服務端解析存在問題,無奈服務端童鞋不予更改。
解決方法如下:
1 a = {'user':'admin','password':'a123456'} 2 >>> print(json.dumps(a)) 3 {"user": "admin", "password": "a123456"} #默認會多一個空格
如果想獲得一個緊湊的json,應該指定消除空格。-> (item_separator, key_separator)(', ', ': ')(',', ':')
具體如下實現:
a = {'user':'admin','password':'a123456'}
>>> print(json.dumps(a,separators=(',',':')))
{"user":"admin","password":"a123456"}
=========================
官方例子:
1 >>> import json 2 >>> json.dumps([1, 2, 3, {'4': 5, '6': 7}], separators=(',', ':')) 3 '[1,2,3,{"4":5,"6":7}]'
參照 官網 例子。
