日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

【Python进阶】_JSON

發布時間:2025/4/5 javascript 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Python进阶】_JSON 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

JSON是什么

JSON (JavaScript Object Notation, JS 對象標記) 是一種輕量級的數據交換格式。

它是 javascript 規范里面定義的。 它是一種文本格式來存儲和表示數據。

它的特點就是 簡潔 并且 清晰, 人都能很容易的看明白。

JSON作用

把程序的各種類型數據對象變成表示該數據對象的字節串 這個過程 稱之為?序列化?。

而把 字節串轉化為 程序中的數據對象 這個過程 稱之為?反序列化

就好像 兩個人聊天時,雙方需要把自己腦子中的事物轉化為語言描述傳遞給對方, 接收到對方的語言描述,再轉化為自己的腦子中的事物一樣。JSON在這個過程中就相當于雙方都可以理解的語言,有著公用的標準與規范。

Python中轉換成JSON格式

Python中內置了json這個庫,可以 方便的把內置的數據對象 序列化為json格式文本的字符串。

把上面的數據對象序列化為json格式的字符串,就可以使用該庫里面的dumps函數,如下

import json historyTransactions = [{'time' : '20170101070311', # 交易時間'amount' : '3088', # 交易金額'productid' : '45454455555', # 貨號'productname' : 'iphone7' # 貨名},{'time' : '20170101050311', # 交易時間'amount' : '18', # 交易金額'productid' : '453455772955', # 貨號'productname' : '奧妙洗衣液' # 貨名}]jsonstr=json.dumps(historyTransactions,ensure_ascii=False,indent=4) print(jsonstr)

輸出結果:

[{"time": "20170101070311","amount": "3088","productid": "45454455555","productname": "iphone7"},{"time": "20170101050311","amount": "18","productid": "453455772955","productname": "奧妙洗衣液"} ]

語句解釋:JSON默認把非ASCII碼的字符轉換為unicode表示,ensure_ascii=False表示轉換中文時不按Unicode表示,輸出原來中文;indent=4表示轉換后縮進為4,這樣顯得整潔好看

Python中接收JSON模式

接收方如果也是Python開發的,可以使用 json庫中的 loads方法,把json格式的字符串變為 Python中的數據對象,如下

import json jsonstr = '[{"time": "20170101070311", "amount": "3088", "productid": "45454455555", "productname": "iphone7"}, {"time": "20170101050311", "amount": "18", "productid": "453455772955", "productname": "\u5965\u5999\u6d17\u8863\u6db2"}]'translist = json.loads(jsonstr) print(translist) print(type(translist))

輸出結果:

[{'time': '20170101070311', 'amount': '3088', 'productid': '45454455555', 'productname': 'iphone7'}, {'time': '20170101050311', 'amount': '18', 'productid': '453455772955', 'productname': '奧妙洗衣液'}] <class 'list'>

可以發現,確實轉變成為了list對象。

這樣接收方程序就可以方便的處理里面的數據了。

對象深拷貝

先看下面一段代碼:

eam1 = [{'name':'喬丹','height':'198'},{'name':'姚明','height':'223'} ]team2 = team1 team2[0]['name'] = '麥迪' print(team1[0]['name'])

輸出結果:麥迪

在上面一段代碼中我們想把從team1中拷貝過來的team2做一些改動而不影響原有的team1數據,按照上面的方式,在改完后我們發現team1中的數據也相應發生了變化。這是因為當我們把team1賦值給team2時,不是重新開辟一個存儲空間存放team1的內容,而是相當于在team2中存放了team1內容的地址,所以改動team2中的內容,其實在改變了這個地址中的內容,team1自然也就相應發生了變化。

為了解決我們的問題,我們可用JSON來完成對象深拷貝,代碼如下:

team1 = [{'name':'喬丹','height':'198'},{'name':'姚明','height':'223'} ]import json team2 = json.loads(json.dumps(team1))team2[0]['name'] = '麥迪' print(team1[0]['name'])

輸出結果:喬丹

解釋:我們先把team1數據內容轉換成JSON格式,再把它轉換成python內部數據格式保存在team2中,會重新開辟一個新的地址存放數據。

總結

以上是生活随笔為你收集整理的【Python进阶】_JSON的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 午夜免费大片 | 精人妻无码一区二区三区 | 成人少妇影院yyyy | 午夜一二三区 | 日韩一级色片 | 用力挺进新婚白嫩少妇 | 国产精品爽爽爽 | 极品色影视 | 日韩av片在线 | 天天天色 | 欧美香蕉视频 | 日韩在线观看免费全 | 亚洲精品久久夜色撩人男男小说 | 成年人黄视频 | 国产99免费 | 国产精品九九 | 亚洲热影院| 91看片在线看 | xxx日本少妇 | www.com色| 农民人伦一区二区三区 | 污污软件在线观看 | 日av一区 | 蜜臀一区二区三区精品免费视频 | 自拍偷拍视频在线 | 污视频免费在线观看 | 男人午夜视频 | 欧美 日韩 国产 成人 在线 91 | 黄色成人影视 | 黄色理伦片| 伦伦影院午夜理伦片 | 亚洲精品视频免费观看 | www.av黄色| 日日干,夜夜操 | 一区二区视频免费 | 亚洲av中文无码乱人伦在线视色 | 日本网站在线看 | 欧美xxxx黑人又粗又长密月 | 亚洲色图 欧美 | 亚洲福利视频在线 | 免费网站观看www在线观 | 国产精选久久 | 亚洲图片二区 | 8x国产一区二区三区精品推荐 | 日本亚洲一区二区 | 超碰97在线看 | 日韩不卡一区二区三区 | 亚洲国产精品无码专区 | 免费观看色 | 成人深夜小视频 | a级在线视频 | 狠狠的日 | 欧美一级二级片 | 日韩欧美电影一区二区三区 | 亚洲第七页| 久草中文在线观看 | 最近中文字幕无免费 | 久久精品国产亚洲AV成人雅虎 | 91吃瓜在线| 天天干,天天干 | 免费看女人裸体 | 76少妇精品导航 | 中国精品一区二区 | 九色丨蝌蚪丨成人 | 婷婷五月情 | 怡春院一区二区 | 亚洲性激情| 精品国产一区二区三区久久久 | 台湾佬综合网 | 亚洲AV午夜福利精品一级无码 | 天天激情综合 | 色偷偷免费| 免费看黄色小视频 | 色综合久久久久 | 国产无遮挡裸体免费视频 | 国产视频在 | 国产人妻精品一区二区三区 | 99精品视频在线看 | 亚洲影视一区 | 成人少妇影院yyyy | 国产精品一区二区av | 少妇户外露出[11p] | 91大奶 | 亚洲宅男天堂 | 欧美理论在线 | 无套内谢88av免费看 | 日本wwwxxx| 91精品婷婷国产综合久久竹菊 | 久久精品国产亚洲av成人 | 九月婷婷色 | 性史性dvd影片农村毛片 | 欧美日韩精品在线视频 | 孕妇毛片 | 日韩精品免费一区二区三区竹菊 | 国产欧美日韩综合精品一区 | 台湾三级伦理片 | 小毛片网站 | 老司机午夜性大片 | 成人听书哪个软件好 |