python中的load、loads实现反序列化示列
作者:hqx 发布时间:2023-04-01 23:49:56
标签:python,load,loads
1、简介
在python
自动化中,我们传递一些参数是需要从文件中读取过来的,读取过来的字典并非python
对象数据类型而是string
类型。
这样在我们传递参数的时候就会出现格式不正确的情况,这时候就要用到load
实现反序列化
python
对象数据类型包括list
,dict
,tuple
,set
等
2、案例1:load
load
:load
主要处理的是文件流
首先我们新建一个txt文件,文件中写入一个字典
{"a":"1","b":"2"}
这时候我们用py文件把他读取出来
f = open(r'C:\Users\张天赐\PycharmProjects\pythonProject\test\lianxi\load.txt','r',encoding='utf-8') #通过open打开刚刚新建的txt文档
a = f.read() #读取f文件下所有的内容
print(a) #打印下读取的内容
print(type(a)) #打印下读取内容的格式
返回结果
D:\software\python.exe C:/Users/张天赐/PycharmProjects/pythonProject/test/lianxi/111.py
{"a":"1","b":"2"}
<class 'str'>
可以看到我们读取出来的内容看似字典,但是实际type
类型是str类型的,如果在做接口测试的时候,接口需要传输
json
格式的数据,这时候就会出现报错的情况。
解决方案:使用load
方式,将文件中的数据转换成python
对象中的dict
字典格式
import json
f = open(r'C:\Users\张天赐\PycharmProjects\pythonProject\test\lianxi\load.txt','r',encoding='utf-8') #通过open打开刚刚新建的txt文档
a = json.load(f) #读取f文件下所有的内容
print(a) #打印下读取的内容
print(type(a)) #打印下读取内容的格式
返回结果
D:\software\python.exe C:/Users/张天赐/PycharmProjects/pythonProject/test/lianxi/111.py
{'a': '1', 'b': '2'}
<class 'dict'>
3、案例2:loads
loads
:loads
主要处理的是字符流
正常打印一个字符形式的字典,返回结果为str类型
test = "{'a':'1','b':'2'}"
print(test)
print(type(test))
返回结果
{'a':'1','b':'2'}
<class 'str'>
使用loads
将sting
类型转换为python
可读对象
import json
test = '{"a":"1","b":"2"}'
test1 = json.loads(test)
print(test1)
print(type(test1))
返回结果
{'a': '1', 'b': '2'}
<class 'dict'>
来源:https://www.cnblogs.com/ztcbug/p/15422275.html


猜你喜欢
- 前言这部分已经折腾我两天了,还是没有头绪,可能还会折腾更久,最后在第三天上午解决问题,在一个不起眼的地方被坑了,jQuery加载的问题。会者
- 分支结构的应用场景迄今为止,我们写的Python代码都是一条一条语句顺序执行,这种结构的代码我们称之为顺序结构。然而仅有顺序结构并不能解决所
- 前言 日益增长的分布式应用需求要求实现更好分布式的软件环境,不断推动着分布式技术的进步。Oracle数据复制是实现分布式数据环境的一种技术,
- 1、通过url下载即后端提供文件的地址,直接使用浏览器去下载通过window.location.href = 文件路径下载window.lo
- 正则表达式简介正则表达式,又称正规表示式、正规表示法、正规表达式、规则表达式、常规表示法(英语:Regular Expression,在代码
- 原理:将数据的二进制形式写入图像红色通道数据二进制的低位只支持png格式的输出写入数据go run shadow.go -in="
- 前言YOLOV5模型从发布到现在都是炙手可热的目标检测模型,被广泛运用于各大场景之中。因此,我们不光要知道如何进行yolov5模型的训练,而
- 本文实例为大家分享了vue实现鼠标滑动展示tab栏切换的具体代码,供大家参考,具体内容如下动画效果:代码如下:<template>
- #-*-coding:utf-8-*-'''Created on 2014年1月10日@author: hhdys&
- 最近这几天,学习了一下python,对于爬虫比较感兴趣,就做了一个简单的爬虫项目,使用Python的库Tkinsert做了一个界面,感觉这个
- 添加字段的语法:alter table tablename add (column datatype [default value][nul
- 设计模式:迭代迭代是一种设计模式,解决有序便利序列的问题。通用的可迭代对象需要支持done和next方法。伪代码如下:while not i
- 如何验证信用卡是否可用,合法? 核实信用卡的真伪是一件麻烦的事儿,看看下面的代码,也许会给你帮上忙:<Script 
- 不止一次在微信、知乎有读者朋友跑过来问:看完了基础书,甚至看两遍了,但自己写的时候还是没思路,我该怎么办?编程在我看来就是一门手艺活,绝不是
- 本文介绍使用aspjpeg组件实现图片的半透明描边的效果,描边效果演示:参数说明'big 原图路径(相对)'small 生成
- 前几天同学要我帮他做个国际聊天室,要求能够将聊天的内容自动翻译成多国语言.本来想用worldlink的翻译服务,但是用ajax很难获得结果,
- 介绍毫无疑问,任何一个试图使用 CSS 的网页设计师和开发人员都会发现不同的浏览器要求不同的样式声明。这些烦恼归咎于各浏览器及其各版本不同程
- 在正式编写爬虫案例前,先对 scrapy 进行一下系统的学习。scrapy 安装与简单运行使用命令 pip install scrapy 进
- 1.在模板中,我们经常要使用一些url,实现页面之间的跳转,比如某个a标签中需要定义href属性。当然如果通过硬编码的方式直接将这个url固
- help函数是python的一个内置函数,在python基础知识中介绍过什么是内置函数,它是python自带的函数,任何时候都可以被使。he