JSON 函數
使用 JSON 函數需要匯入 json 函式庫:import json。
函數 描述
json.dumps 將Python 物件編碼成JSON 字串
json.loads 將已編碼的JSON 字串解碼為Python 物件
json.dumps
語法
json.dumps(obj, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, cls=None, indent=None, separators=None , encoding="utf-8", default=None, sort_keys=False, **kw)
實例
以下實例將陣列編碼為JSON 格式資料:
#!/usr/bin/python
import json
data = {'number': 6, 'name': 'Pythontab'}
jsonData = json.dumps(data)
print jsonData
登入後複製
以上程式碼執行結果為:
{"number": 6, "name": "Pythontab"}
登入後複製
注意: 大家可能發現,執行上述轉換以後,資料並沒有發生變化,這裡要說一下: 在json中雙引號才是標註的字串分割符號,單引號不標準。
使用參數讓JSON 資料排序並格式化輸出:
#!/usr/bin/python
import json
data = {'number': 6, 'name': 'Pythontab'}
jsonData = json.dumps(data, sort_keys=True, indent=4, separators=(',', ': '))
print jsonData
登入後複製
輸出結果
{
"name": "Pythontab",
"number": 6
}
登入後複製
python 原始類型轉換到json 類型的對照表:
Python | JSON |
---|
#dict | object |
| |
| |
| list, tuple | array
| #str, unicode | string
| int, long, float | number
| True | true
##False
false
None
null
json.loads
json.loads 用於解碼JSON 資料。此函數傳回 Python 欄位的資料類型。
語法json.loads(s[, encoding[, cls[, object_hook[, parse_float[, parse_int[, parse_constant[, object_pairs_hook[,kw]]]] **kw]]]] ]])實例以下實例展示了Python 如何解碼JSON 物件:#!/usr/bin/python
import json
jsonData = '{"number": 6, "name": "Pythontab"}'
str = json.loads(jsonData)
print str 登入後複製 | 以上程式碼執行結果為:{u'number': 6, u'name': u'Pythontab'} 登入後複製 json 類型轉換到python 的型別對照表: |
|
|
JSON##Python |
|
|
|
|
|
|
|
|
|
object | dict |
#array | list |
string unicode
number (int)int, long
number (real)float
trueTrue
false#False
######################## #######null######None##################使用第三方函式庫:Demjson######Demjson 是python 的第三方模組庫,可用於編碼和解碼JSON 數據,包含了JSONLint 的格式化及校驗功能。 ######Github 位址:https://github.com/dmeranda/demjson######環境配置######在使用Demjson 編碼或解碼JSON 資料前,我們需要先安裝Demjson 模組。 ######方法1:原始碼安裝######$ tar -xvzf demjson-2.2.4.tar.gz######$ cd demjson-2.2.2.4######$ python setup.py install######方法2:直接使用pip安裝######pip install Demjson######JSON 函數######函數 描述#######encode將Python 物件編碼成JSON 字串######decode 可以使用demjson.decode() 函數解碼JSON 資料。此函數傳回 Python 欄位的資料類型。 ######encode語法######demjson.encode(self, obj, nest_level=0)#########demjson.encode(self, obj, nest_level=0)######decode語法######demjson.decode(self, txt)## ####使用都很簡單,我就不在這裡舉例~~###以上是有關Python解析JSON的內容詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
PHP和Python:解釋了不同的範例
Apr 18, 2025 am 12:26 AM
PHP主要是過程式編程,但也支持面向對象編程(OOP);Python支持多種範式,包括OOP、函數式和過程式編程。 PHP適合web開發,Python適用於多種應用,如數據分析和機器學習。
在PHP和Python之間進行選擇:指南
Apr 18, 2025 am 12:24 AM
PHP適合網頁開發和快速原型開發,Python適用於數據科學和機器學習。 1.PHP用於動態網頁開發,語法簡單,適合快速開發。 2.Python語法簡潔,適用於多領域,庫生態系統強大。
Python vs. JavaScript:學習曲線和易用性
Apr 16, 2025 am 12:12 AM
Python更適合初學者,學習曲線平緩,語法簡潔;JavaScript適合前端開發,學習曲線較陡,語法靈活。 1.Python語法直觀,適用於數據科學和後端開發。 2.JavaScript靈活,廣泛用於前端和服務器端編程。
PHP和Python:深入了解他們的歷史
Apr 18, 2025 am 12:25 AM
PHP起源於1994年,由RasmusLerdorf開發,最初用於跟踪網站訪問者,逐漸演變為服務器端腳本語言,廣泛應用於網頁開發。 Python由GuidovanRossum於1980年代末開發,1991年首次發布,強調代碼可讀性和簡潔性,適用於科學計算、數據分析等領域。
vs code 可以在 Windows 8 中運行嗎
Apr 15, 2025 pm 07:24 PM
VS Code可以在Windows 8上運行,但體驗可能不佳。首先確保系統已更新到最新補丁,然後下載與系統架構匹配的VS Code安裝包,按照提示安裝。安裝後,注意某些擴展程序可能與Windows 8不兼容,需要尋找替代擴展或在虛擬機中使用更新的Windows系統。安裝必要的擴展,檢查是否正常工作。儘管VS Code在Windows 8上可行,但建議升級到更新的Windows系統以獲得更好的開發體驗和安全保障。
visual studio code 可以用於 python 嗎
Apr 15, 2025 pm 08:18 PM
VS Code 可用於編寫 Python,並提供許多功能,使其成為開發 Python 應用程序的理想工具。它允許用戶:安裝 Python 擴展,以獲得代碼補全、語法高亮和調試等功能。使用調試器逐步跟踪代碼,查找和修復錯誤。集成 Git,進行版本控制。使用代碼格式化工具,保持代碼一致性。使用 Linting 工具,提前發現潛在問題。
notepad 怎麼運行python
Apr 16, 2025 pm 07:33 PM
在 Notepad 中運行 Python 代碼需要安裝 Python 可執行文件和 NppExec 插件。安裝 Python 並為其添加 PATH 後,在 NppExec 插件中配置命令為“python”、參數為“{CURRENT_DIRECTORY}{FILE_NAME}”,即可在 Notepad 中通過快捷鍵“F6”運行 Python 代碼。
vscode 擴展是否是惡意的
Apr 15, 2025 pm 07:57 PM
VS Code 擴展存在惡意風險,例如隱藏惡意代碼、利用漏洞、偽裝成合法擴展。識別惡意擴展的方法包括:檢查發布者、閱讀評論、檢查代碼、謹慎安裝。安全措施還包括:安全意識、良好習慣、定期更新和殺毒軟件。
See all articles