我一直在使用json.dumps()
創建一些模板,但使用它時,它改變了我的布爾值 的外殼下面是如何複製:爲什麼json.dumps會更改布爾值的大小?
import json
test_obj = {'field': False}
print json.dumps(test_obj)
# prints {"field": false}
什麼是這個原因?
我一直在使用json.dumps()
創建一些模板,但使用它時,它改變了我的布爾值 的外殼下面是如何複製:爲什麼json.dumps會更改布爾值的大小?
import json
test_obj = {'field': False}
print json.dumps(test_obj)
# prints {"field": false}
什麼是這個原因?
json.dumps()
將Python字典轉換爲格式爲字符串的JSON對象。根據JSON specification,JSON中的兩個布爾文字是true
和false
。所以,json.dumps()
並沒有改變外殼,它只是將Python的布爾文字,True
和False
分別轉換爲JSON的布爾文字,true
和false
。
如果你希望得到的Python字典的字符串表示,無須轉換爲JSON,你可以投的字典字符串中使用str()
JSON代表JavaScript Object Notation
和true
是JS中的布爾表示。與these docs比較。
可能與它是小寫做的是JavaScript和因此可能由小寫JSON規範? – Carcigenicate
@Carcigenicate我實際上正在編輯和寫這個建議!這會很有意義。 – kermitvomit
@kermitvomit無論如何,那必須只是一個字符串表示。除非你試圖''評估''dumps'給你帶來什麼,否則它實際上不應該產生任何效果。 – Carcigenicate