python中的load、loads實(shí)現(xiàn)反序列化示列
1、簡(jiǎn)介
在python
自動(dòng)化中,我們傳遞一些參數(shù)是需要從文件中讀取過(guò)來(lái)的,讀取過(guò)來(lái)的字典并非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文件把他讀取出來(lái)
f = open(r'C:\Users\張?zhí)熨n\PycharmProjects\pythonProject\test\lianxi\load.txt','r',encoding='utf-8') #通過(guò)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'>
可以看到我們讀取出來(lái)的內(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') #通過(guò)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)反序列化的問(wè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ò)的問(wèn)題
- Python json模塊dumps、loads操作示例
- Python Json模塊中dumps、loads、dump、load函數(shù)介紹
相關(guān)文章
Python 中創(chuàng)建 PostgreSQL 數(shù)據(jù)庫(kù)連接池
這篇文章主要介紹了Python 中創(chuàng)建 PostgreSQL 數(shù)據(jù)庫(kù)連接池,Python 連接 PostgreSQL 是主要有兩個(gè)包, py-postgresql 和 psycopg2 , 而本文的實(shí)例將使用后者,感興趣的小伙伴可以參考一下2021-10-10手把手帶你了解Python數(shù)據(jù)分析--matplotlib
這篇文章主要介紹了Python實(shí)現(xiàn)matplotlib顯示中文的方法,結(jié)合實(shí)例形式詳細(xì)總結(jié)分析了Python使用matplotlib庫(kù)繪圖時(shí)顯示中文的相關(guān)操作技巧與注意事項(xiàng),需要的朋友可以參考下2021-08-08python用for循環(huán)求和的方法總結(jié)
在本篇文章里小編給各位分享了關(guān)于python用for循環(huán)求和的方法以及相關(guān)實(shí)例代碼,需要的朋友們參考學(xué)習(xí)下。2019-07-07Python用for循環(huán)實(shí)現(xiàn)九九乘法表
本文通過(guò)實(shí)例代碼給大家介紹了Python用for循環(huán)實(shí)現(xiàn)九九乘法表的方法,代碼簡(jiǎn)單易懂,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2018-05-05Flask框架debug與配置項(xiàng)的開啟與設(shè)置詳解
這篇文章主要介紹了Flask框架debug與配置項(xiàng)的開啟與設(shè)置,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-09-09Jupyter notebook中5個(gè)有趣的魔法命令分享
眾?所周知,Jupyter notebook是一個(gè)交互式的Python shell,也就是IPython的封裝版,非常適合用來(lái)進(jìn)行數(shù)據(jù)分析和機(jī)器學(xué)習(xí)。本文為大家整理了Jupyter notebook中5個(gè)有趣的魔法命令,感興趣的可以了解一下2022-07-07Python實(shí)現(xiàn)讀取txt文件并畫三維圖簡(jiǎn)單代碼示例
這篇文章主要介紹了Python實(shí)現(xiàn)讀取txt文件并畫三維圖簡(jiǎn)單代碼示例,具有一定借鑒價(jià)值,需要的朋友可以參考下。2017-12-12在VS2017中用C#調(diào)用python腳本的實(shí)現(xiàn)
這篇文章主要介紹了在VS2017中用C#調(diào)用python腳本的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07