當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
Python高级编程——JSON
生活随笔
收集整理的這篇文章主要介紹了
Python高级编程——JSON
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Python3 JSON 數據解析
JSON (JavaScript Object Notation) 是一種輕量級的數據交換格式。它基于ECMAScript的一個子集。
Python3 中可以使用 json 模塊來對 JSON 數據進行編解碼,它包含了兩個函數:
- json.dumps(): 對數據進行編碼。
- json.loads(): 對數據進行解碼。
在json的編解碼過程中,python 的原始類型與json類型會相互轉換
Python 編碼為 JSON 類型轉換對應表:
| dict | object |
| list, tuple | array |
| str | string |
| int, float, int- & float-derived Enums | number |
| True | true |
| False | false |
| None | null |
JSON 解碼為 Python 類型
只需把上表反過來,不贅述了。注意下表不同之處
| number (int) | int |
| number (real) | float |
實例
Python 數據結構轉換為JSON
import json# Python 字典類型轉換為 JSON 對象 data = {'no' : 1,'name' : 'SB','url' : 'http://www.SB.com' }json_str = json.dumps(data) print ("Python 原始數據:", repr(data)) print ("JSON 對象:", json_str)結果為:
Python 原始數據: {'url': 'http://www.SB.com', 'no': 1, 'name': 'SB'} JSON 對象: {"url": "http://www.SB.com", "no": 1, "name": "SB"}JSON編碼的字符串轉換回一個Python數據結構:
import json data1 = {'no' : 1,'name' : 'SB','url' : 'http://www.SB.com' }json_str = json.dumps(data1) print ("Python 原始數據:", repr(data1)) print ("JSON 對象:", json_str)# 將 JSON 對象轉換為 Python 字典 data2 = json.loads(json_str) print ("data2['name']: ", data2['name']) print ("data2['url']: ", data2['url'])結果為:
Python 原始數據: {'name': 'SB', 'no': 1, 'url': 'http://www.SB.com'} JSON 對象: {"name": "SB", "no": 1, "url": "http://www.SB.com"} data2['name']: SB data2['url']: http://www.SB.com如果你要處理的是文件而不是字符串,你可以使用 json.dump() 和 json.load() 來編碼和解碼JSON數據。
# 寫入 JSON 數據 with open('data.json', 'w') as f:json.dump(data, f)# 讀取數據 with open('data.json', 'r') as f:data = json.load(f)總結
以上是生活随笔為你收集整理的Python高级编程——JSON的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何选择一个合适高效率的光纤熔接机--T
- 下一篇: 如何将手机里的wav录音转换成mp3格式