python中的load、loads實(shí)現(xiàn)反序列化示列
1、簡(jiǎn)介
在python自動(dòng)化中,我們傳遞一些參數(shù)是需要從文件中讀取過來的,讀取過來的字典并非python對(duì)象數(shù)據(jù)類型而是string類型。
這樣在我們傳遞參數(shù)的時(shí)候就會(huì)出現(xiàn)格式不正確的情況,這時(shí)候就要用到load實(shí)現(xiàn)反序列化
python對(duì)象數(shù)據(jù)類型包括list ,dict,tuple,set等
2、案例1:load
load:load主要處理的是文件流
首先我們新建一個(gè)txt文件,文件中寫入一個(gè)字典
{"a":"1","b":"2"}
這時(shí)候我們用py文件把他讀取出來
f = open(r'C:\Users\張?zhí)熨n\PycharmProjects\pythonProject\test\lianxi\load.txt','r',encoding='utf-8') #通過open打開剛剛新建的txt文檔 a = f.read() #讀取f文件下所有的內(nèi)容 print(a) #打印下讀取的內(nèi)容 print(type(a)) #打印下讀取內(nèi)容的格式
返回結(jié)果
D:\software\python.exe C:/Users/張?zhí)熨n/PycharmProjects/pythonProject/test/lianxi/111.py
{"a":"1","b":"2"}
<class 'str'>
可以看到我們讀取出來的內(nèi)容看似字典,但是實(shí)際type類型是str類型的,如果在做接口測(cè)試的時(shí)候,接口需要傳輸
json格式的數(shù)據(jù),這時(shí)候就會(huì)出現(xiàn)報(bào)錯(cuò)的情況。
解決方案:使用load方式,將文件中的數(shù)據(jù)轉(zhuǎn)換成python對(duì)象中的dict字典格式
import json f = open(r'C:\Users\張?zhí)熨n\PycharmProjects\pythonProject\test\lianxi\load.txt','r',encoding='utf-8') #通過open打開剛剛新建的txt文檔 a = json.load(f) #讀取f文件下所有的內(nèi)容 print(a) #打印下讀取的內(nèi)容 print(type(a)) #打印下讀取內(nèi)容的格式
返回結(jié)果
D:\software\python.exe C:/Users/張?zhí)熨n/PycharmProjects/pythonProject/test/lianxi/111.py
{'a': '1', 'b': '2'}
<class 'dict'>
3、案例2:loads
loads:loads主要處理的是字符流
正常打印一個(gè)字符形式的字典,返回結(jié)果為str類型
test = "{'a':'1','b':'2'}"
print(test)
print(type(test))
返回結(jié)果
{'a':'1','b':'2'}
<class 'str'>
使用loads將sting類型轉(zhuǎn)換為python可讀對(duì)象
import json
test = '{"a":"1","b":"2"}'
test1 = json.loads(test)
print(test1)
print(type(test1))
返回結(jié)果
{'a': '1', 'b': '2'}
<class 'dict'>
到此這篇關(guān)于python中的load、loads實(shí)現(xiàn)反序列化示列的文章就介紹到這了,更多相關(guān)load與loads內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- 聊聊python中的load、loads實(shí)現(xiàn)反序列化的問題
- python處理json字符串(使用json.loads而不是eval())
- Python中json.load()和json.loads()有哪些區(qū)別
- python dumps和loads區(qū)別詳解
- python3 json數(shù)據(jù)格式的轉(zhuǎn)換(dumps/loads的使用、dict to str/str to dict、json字符串/字典的相互轉(zhuǎn)換)
- python json.loads兼容單引號(hào)數(shù)據(jù)的方法
- 解決Python下json.loads()中文字符出錯(cuò)的問題
- Python json模塊dumps、loads操作示例
- Python Json模塊中dumps、loads、dump、load函數(shù)介紹
相關(guān)文章
Python基于DFA算法實(shí)現(xiàn)內(nèi)容敏感詞過濾
DFA?算法是通過提前構(gòu)造出一個(gè)?樹狀查找結(jié)構(gòu),之后根據(jù)輸入在該樹狀結(jié)構(gòu)中就可以進(jìn)行非常高效的查找。本文將利用改算法實(shí)現(xiàn)敏感詞過濾,需要的可以參考一下2022-04-04
基于OpenCV4.2實(shí)現(xiàn)單目標(biāo)跟蹤
這篇文章主要介紹了如何和何時(shí)使用OpenCV 4.2中可用的8種不同的跟蹤器- BOOSTING, MIL, KCF, TLD, MEDIANFLOW, GOTURN, MOSSE和CSRT,并用他們實(shí)現(xiàn)單目標(biāo)跟蹤,需要的可以參考一下2022-03-03
python3啟動(dòng)web服務(wù)引發(fā)的一系列問題匯總
由于行內(nèi)交付的機(jī)器已自帶python3 ,沒有采取自行安裝python3,但是運(yùn)行python腳本時(shí)報(bào)沒有tornado module,遇到這樣的問題如何處理呢,下面小編給大家介紹下python3啟動(dòng)web服務(wù)引發(fā)的一系列問題匯總,感興趣的朋友一起看看吧2023-02-02
淺談python數(shù)據(jù)類型及類型轉(zhuǎn)換
這篇文章主要介紹了淺談python數(shù)據(jù)類型及類型轉(zhuǎn)換,介紹了python中的數(shù)據(jù)類型,以及數(shù)據(jù)的不可變性,還有字符串,列表等相關(guān)內(nèi)容,具有一定借鑒價(jià)值,需要的朋友可以參考下。2017-12-12
Django 權(quán)限管理(permissions)與用戶組(group)詳解
這篇文章主要介紹了Django 權(quán)限管理(permissions)與用戶組(group)詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11
Jupyter Notebook的連接密碼 token查詢方式
這篇文章主要介紹了Jupyter Notebook的連接密碼 token查詢方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-04-04

