日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Python解析JSON對象的全過程記錄

瀏覽:19日期:2022-06-24 10:08:06
前言

本章節我們將為大家介紹如何使用 Python 語言來編碼和解碼 JSON 對象。

json處理模塊的主要任務,是將一個JSON對象,轉換成Python數據類型數據進行處理,或者反之,將Python數據類型數據,轉換成JSON對象(字符串流),在不同的模塊或者系統間傳輸。

1. JSON數據格式特點 對象表示為鍵值對 數據由逗號分隔 花括號保存對象 方括號保存數組

{ 'students': [ { 'name':'北山啦' , 'age':20 }, { 'name':'張三' , 'age':30 }, { 'name':'里斯' , 'age':17 } ]}

{’students’: [{’name’: ’北山啦’, ’age’: 20}, {’name’: ’張三’, ’age’: 30}, {’name’: ’里斯’, ’age’: 17}]}

上面就是一個JSON格式數據。它開起來就像是在Python中的字典數據類型。我們可以通過json模塊將它轉換成字符串或者反過來將字符串轉換成字典數據類型。

JSON也支持各種數據類型,它的數據類型和Python各種數據類型之間的對比如下:

object —— dict array —— list string —— str number —— int/float true/false —— True/False null —— None 2. 常用方法總結

在json模塊中,用于處理json的主要是四個函數,分別是:

loads():從JSON字符串中讀取數據并轉換成Python數據類型 load():從JSON文件中讀取數據并轉換成Python數據類型 dumps():將Python數據類型數據轉換成JSON字符串 dump():將Python數據類型數據轉換成JSON字符串寫入到文件 3. 系列化和反系列化

Python解析JSON對象的全過程記錄

從JSON數據轉換到Python數據,叫反系列化(deserialization)

從Python數據轉換到JSON數據,叫系列化(serialization)

3.1 系列化

系列化:將Python數據轉換成JSON字符串的方法。

下面我們先來看一個簡單的例子。

import jsondata = { 'students': [ { 'name':'北山啦' , 'age':20 }, { 'name':'張三' , 'age':30 }, { 'name':'里斯' , 'age':17 } ]}print(type(data))print(data)json_str = json.dumps(data)print(type(json_str))

<class ’dict’>{’students’: [{’name’: ’北山啦’, ’age’: 20}, {’name’: ’張三’, ’age’: 30}, {’name’: ’里斯’, ’age’: 17}]}<class ’str’>

上面的例子中,雖然看起來數據沒有發生變化,但其實它們的數據類型已經發生了本質的改變:將字典數據類型的data,轉換成了str類型,然后我們就可以將這個str類型的數據轉換成流,在網絡上進行傳輸或者寫入到文件等。

import jsondata = { 'students': [ { 'name':'北山啦' , 'age':20 }, { 'name':'張三' , 'age':30 }, { 'name':'里斯' , 'age':17 } ]}print(type(data))print(data)json_str = json.dumps(data, separators=(’>>’,’::’), indent=2)print(json_str)

<class ’dict’>{’students’: [{’name’: ’北山啦’, ’age’: 20}, {’name’: ’張三’, ’age’: 30}, {’name’: ’里斯’, ’age’: 17}]}{ 'students'::[ { 'name'::'u5317u5c71u5566'>> 'age'::20 }>> { 'name'::'u5f20u4e09'>> 'age'::30 }>> { 'name'::'u91ccu65af'>> 'age'::17 } ]}

將data寫入txt文件中

import jsondata = { 'students': [ { 'name':'北山啦' , 'age':20 }, { 'name':'張三' , 'age':30 }, { 'name':'里斯' , 'age':17 } ]}with open('students.txt','w') as fp: json.dump(data, fp, ensure_ascii=False) print('finish')

finish

這樣就將data寫入了students.txt,看看是不是已經將數據寫進去了。

3.2 反系列化

從JSON數據轉換到Python類型數據,叫反系列化。可以通過loads()/load()這兩個方法來完成。

import jsonwith open('students.txt') as fp: data = json.load(fp) '''取出字典key為students的數據, 得到一個list,再從這個list中取第一個數據''' print(data[’students’][0])

{’name’: ’北山啦’, ’age’: 20}

parse_int參數

默認值為None,如果指定了parse_int,用來對JSON int字符串進行解碼,這可以用于為JSON整數使用另一種數據類型或解析器。

parse_int參數,這里我們簡單將其指定為float類型。

import jsonwith open('students.txt') as fp: data = json.load(fp, parse_int = float) print(data)

{’students’: [{’name’: ’北山啦’, ’age’: 20.0}, {’name’: ’張三’, ’age’: 30.0}, {’name’: ’里斯’, ’age’: 17.0}]}

可以看到,age原來是整數類型,通過parse_int已經被轉換成了float類型。

object_hook

默認值為None,object_hook是一個可選函數,此功能可用于實現自定義解碼器。指定一個函數,該函數負責把反序列化后的基本類型對象轉換成自定義類型的對象。

def fromJSON(dct): # 這里會對所有的字典數據類型都進行遍歷 if isinstance(dct, dict) and ’students’ in dct: return dct[’students’] else: return Student(dct[’name’], dct[’age’])import jsonwith open('students.txt') as fp: data = json.load(fp, object_hook=fromJSON) print(data)

[姓名: 北山啦, 年齡: 20, 姓名: 張三, 年齡: 30, 姓名: 里斯, 年齡: 17]

總結

到此這篇關于Python解析JSON對象的文章就介紹到這了,更多相關Python解析JSON對象內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python 編程
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
日韩欧美三区| 国产精品观看| 国产精品麻豆久久| 亚洲天堂资源| 伊人精品一区| 水蜜桃久久夜色精品一区的特点| 亚洲男女自偷自拍| 欧美一区成人| 快she精品国产999| 中文无码久久精品| 天堂va欧美ⅴa亚洲va一国产| 日韩久久99| 欧美激情麻豆| 日韩欧美自拍| 中文字幕在线官网| 亚洲综合不卡| 国产精品嫩模av在线| 美女久久99| 偷拍欧美精品| 欧美日韩一区二区三区在线电影| 国产精品久久久久久模特| 日本美女一区| 免费的成人av| 日韩精品第一区| 蜜桃一区二区三区在线| 亚洲第一精品影视| 亚洲tv在线| 日韩美女一区二区三区在线观看| 亚洲一区二区三区高清| 四虎成人精品一区二区免费网站| 日韩成人精品一区二区| 日韩影院免费视频| 日韩在线中文| 国产欧美自拍| 蜜桃av一区二区| 欧美天堂视频| 国产精品一区二区精品| 免费成人性网站| 国产成人精品亚洲日本在线观看| 一本一道久久a久久| 麻豆国产欧美一区二区三区 | 久久精品99国产国产精| 久久av在线| 婷婷亚洲五月| 国产传媒av在线| 久久伊人国产| 国产情侣一区在线| 亚洲综合婷婷| 日韩一区二区三区高清在线观看 | 国产麻豆一区二区三区| 蜜臀91精品一区二区三区| 色天使综合视频| 91欧美在线| 国产精品毛片久久久| 一区二区不卡| 老牛国产精品一区的观看方式| 欧美在线观看视频一区| 99久久99久久精品国产片果冰| 国产一区二区精品久| 国产va免费精品观看精品视频| 国产亚洲久久| 国产精品白丝一区二区三区| 国产欧美日韩视频在线| 国产精品久久久久久模特 | 蜜臀av亚洲一区中文字幕| 蜜桃av一区二区| 国产伦精品一区二区三区千人斩 | 一区二区精品| 视频一区视频二区在线观看| 亚洲综合精品四区| 日韩精品91亚洲二区在线观看| 丝袜国产日韩另类美女| 亚洲有吗中文字幕| 久久99蜜桃| 伊人久久大香线蕉av不卡| 欧美中文字幕| 欧美激情网址| 激情欧美国产欧美| 国产偷自视频区视频一区二区| 蜜臀久久99精品久久久画质超高清 | 福利一区二区免费视频 | 黄色成人精品网站| 精品免费av在线| 日韩专区在线视频| 国产伦理久久久久久妇女| 99热精品久久| 欧美日韩夜夜| 国产综合精品一区| 91精品日本| 亚洲高清久久| 国产精品毛片久久久| 99亚洲视频| 91亚洲自偷观看高清| 亚洲欧美网站在线观看| 中文字幕在线看片| 亚洲久久视频| 97久久精品| 精品国产精品国产偷麻豆| 欧美日韩视频一区二区三区| 国产精品**亚洲精品| 在线亚洲激情| 日韩一区二区三区在线免费观看| 亚洲人成毛片在线播放女女| 日韩中文影院| 国产精品羞羞答答在线观看| 午夜久久黄色| 国产欧美一区二区三区精品酒店| 91九色综合| 日韩一区二区三区精品| 99riav1国产精品视频| 欧美香蕉视频| 欧美激情另类| 日本亚洲最大的色成网站www | 国产精品久久亚洲不卡| 日韩国产精品久久久| 亚洲视频国产| 亚洲欧美日本国产专区一区| 日韩精品免费一区二区三区| 免费在线观看一区| 免费在线播放第一区高清av| 亚洲精品第一| 日韩精品欧美大片| 亚洲欧美在线综合| 日韩超碰人人爽人人做人人添| 亚久久调教视频| 国产一区成人| 视频一区中文字幕精品| 日韩极品在线观看| 久久狠狠亚洲综合| 麻豆久久久久久| 欧美日韩国产v| 免费观看久久av| 久久亚洲影院| 欧美日韩视频免费看| 国产精品白浆| 欧洲亚洲一区二区三区| 亚洲欧美日韩一区在线观看| 91精品尤物| 精品国产精品久久一区免费式| 国产理论在线| 四虎4545www国产精品 | 精品黄色一级片| 日韩不卡视频在线观看| 蜜乳av另类精品一区二区| 国产亚洲欧美日韩精品一区二区三区 | 欧美国产日本| 群体交乱之放荡娇妻一区二区| 蜜桃久久精品一区二区| 日韩av中文字幕一区二区三区| 精品久久免费| 99精品电影| 日本中文字幕一区二区视频| 精品五月天堂| 综合国产精品| 成人欧美一区二区三区的电影| 爽好久久久欧美精品| 国产精品对白| 99re国产精品| 91一区二区| **爰片久久毛片| 亚洲欧洲一区二区天堂久久| 精品一区二区男人吃奶| 一区二区三区午夜视频| 精精国产xxxx视频在线野外| 国产人成精品一区二区三| 日韩不卡免费高清视频| 欧美亚洲自偷自偷| 婷婷亚洲综合| 日韩网站中文字幕| 久久不见久久见国语| 亚洲久久一区| 性欧美长视频| 亚洲91久久| 超碰超碰人人人人精品| 国产精品videossex| 日韩一区二区三免费高清在线观看| 一区视频在线| 99久久99视频只有精品| 97精品视频在线看| 国产精品777777在线播放| 久久一二三区| 亚洲综合丁香| 亚洲尤物在线| 免费看日韩精品| 噜噜噜躁狠狠躁狠狠精品视频| 精品一区免费| 女人av一区| 香蕉久久国产| 亚洲一区二区av| 日本一不卡视频| 国产精品一线| 久久精品99国产精品| 国产日韩欧美一区二区三区 | 久久国产精品毛片| 日韩毛片在线| 亚洲综合欧美| 日本亚洲欧洲无免费码在线| 日韩黄色在线观看| 91精品国产经典在线观看 | 综合在线一区|