Python Json模块中dumps、loads、dump、load函数介绍
1、json.dumps()
json.dumps()用于将dict类型的数据转成str,因为如果直接将dict类型的数据写入json文件中会发生报错,因此在将数据写入时需要用到该函数。
import json
name = {'a': 'zhangsan', 'b': 'lisi', 'c': 'mawu', 'd': 'zhaoliu'}
jsDumps = json.dumps(name)
print(name,'类型为:%s'%type(name))
print(jsDumps,'类型为:%s'%type(jsDumps))
结果为
{'a': 'zhangsan', 'b': 'lisi', 'c': 'mawu', 'd': 'zhaoliu'} 类型为:<class 'dict'>
{"a": "zhangsan", "b": "lisi", "c": "mawu", "d": "zhaoliu"} 类型为:<class 'str'>
2、json.dump()
json.dump()用于将dict类型的数据转成str,并写入到json文件中。下面两种方法都可以将数据写入json文件
import json
nameList = {'a': 'zhangsan', 'b': 'lisi', 'c': 'mawu', 'd': 'zhaoliu'} fileName = ('./namejson.json') # 方法 1 #现将字典转为字符串,在写入文件中
jsObj = json.dumps(nameList)
with open(fileName, "w",encoding='utf-8') as f:
f.write(jsObj)
f.close() # 方法 2 # 直接写入文件中 格式:json.dump(字典或列表,打开文件,ensure_ascii=False) 关闭ascii转码 json.dump(nameList, open(fileName, "w",encoding='utf-8'),ensure_ascii=False)
3、json.loads()
json.loads()用于将str类型的数据转成dict。
import json
name = {'a': 'zhangsan', 'b': 'lisi', 'c': 'mawu', 'd': 'zhaoliu'}
jsDumps = json.dumps(name)
jsLoads = json.loads(jsDumps)
print(name,'类型为:%s'%type(name))
print(jsDumps,'类型为:%s'%type(jsDumps))
print(jsLoads,'类型为:%s'%type(jsLoads))
结果为
{'a': 'zhangsan', 'b': 'lisi', 'c': 'mawu', 'd': 'zhaoliu'} 类型为:<class 'dict'>
{"a": "zhangsan", "b": "lisi", "c": "mawu", "d": "zhaoliu"} 类型为:<class 'str'>
{'a': 'zhangsan', 'b': 'lisi', 'c': 'mawu', 'd': 'zhaoliu'} 类型为:<class 'dict'>
4、json.load()
json.load()用于从json文件中读取数据。
import json
emb_filename = ('./emb_json.json')
jsObj = json.load(open(emb_filename))
print(jsObj)
print(type(jsObj))
for key in jsObj.keys():
print('key: %s value: %s' % (key, jsObj.get(key)))
结果为
{'a': 'zhangsan', 'b': 'lisi', 'c': 'mawu', 'd': 'zhaoliu'}
<class 'dict'>
key: a value: zhangsan
key: b value: lisi
key: c value: mawu
key: d value: zhaoliu
Python Json模块中dumps、loads、dump、load函数介绍的更多相关文章
- Python Json模块中dumps、loads、dump、load函数介绍哦
来自: https://www.jb51.net/article/139498.htm 1.json.dumps() json.dumps()用于将dict类型的数据转成str,因为如果直 ...
- 细说【json&pickle】dumps,loads,dump,load的区别
1 json.dumps() json.dumps()是将字典类型转化成字符串类型. import json name_emb = {'a':'1111','b':'2222','c':'3333', ...
- json模块中dumps()与dump()区别
dumps是将dict转化成json字符串格式,loads是将json字符串转化成dict格式. dump和load也是类似的功能,只是与文件操作结合起来了. dump(写入内容,文件对象) 和loa ...
- json模块中函数的用法
json模块中主要使用四个函数:json.load(),json.dump(),json.loads(),json.dumps() json.loads()是将一个json编码的字符串转换成pytho ...
- Python中的Json模块dumps、loads、dump、load函数介绍
Json模块dumps.loads.dump.load函数介绍 1.json.dumps() json.dumps() 用于将dict类型的数据转成str,因为如果直接将dict类型的数据写入json ...
- 爬虫 Http请求,urllib2获取数据,第三方库requests获取数据,BeautifulSoup处理数据,使用Chrome浏览器开发者工具显示检查网页源代码,json模块的dumps,loads,dump,load方法介绍
爬虫 Http请求,urllib2获取数据,第三方库requests获取数据,BeautifulSoup处理数据,使用Chrome浏览器开发者工具显示检查网页源代码,json模块的dumps,load ...
- Json模块dumps、loads、dump、load函数介绍
转自:http://blog.csdn.net/mr_evanchen/article/details/77879967 Json模块dumps.loads.dump.load函数介绍 1.json. ...
- python基础语法15 面向对象2 继承,多态,继承json模块中JSONEncoder,并派生出新的功能
继承 1.什么是继承? 继承是一种新建类的方式,新建的类称之为子类或派生类,继承的父类称之为基类或超类. - 在Python中,一个子类可以继承多个父类.(面试可能会问) - 在其它语言中,一个子类只 ...
- python json模块(15)
JSON 的全称是 JavaScript Object Notation,即 JavaScript 对象符号,它是一种轻量级.跨平台.跨语言的数据交换格式,其设计意图是把所有事情都用设计的字符串来表示 ...
随机推荐
- redis编译安装
centos7 redis-4.0.6 make 报错 jemalloc.h: No such file or directory make MALLOC=libc MALLOC默认值是jemallo ...
- SSM框架下,使用ajax请求上传文件(doc\docx\excel\图片等)
1.准备工作 1.1.添加上传必要jar包 <dependency> <groupId>commons-io</groupId> <artifactId> ...
- java工程师基础笔试题(一)
一.选择和填空 (不定项哦!) 1,如下是一份文件名为Test2.java的源文件,请问,编译该文件之后会生成几份字节码文件 class Test{ class Inner{} static cla ...
- springboot-day01-引入基础
1. 今日大纲 1. 了解Spring的发展 2. 掌握Spring的java配置方式 3. 学习Spring Boot 4. 使用Spring Boot完成CRUD 2. Spring的发展 2.1 ...
- json转换工具类:json<===>list或者对象
public class JsonTools { /** * POJO 转 JSON */ public static String createJsonString(Object object) { ...
- awk——getline
A.getline从整体上来说,应这么理解它的用法: 当其左右无重定向符 | 或 < 时,getline作用于当前文件,读入当前文件的第一行给其后跟的变量var 或$0(无变量):应该注意到,由 ...
- BP神经网络学习
人工神经元模型 S型函数(Sigmoid) 双极S型函数 神经网络可以分为哪些? 按照连接方式,可以分为:前向神经网络 vs. 反馈(递归)神经网络 按照学习方式,可以分为:有导师学习神经网络 ...
- Hudson 打包部署到Was上特别慢
一.找问题点 1.打包很快,到部署很慢 2.部署到其他was一样很慢 二.解决 经过寻找,网上找出以下一段话: 问题出在web.xml,web.xml中的版本信息不对,要根据你的servlet版本和运 ...
- CentOS SELinux服务关闭与开启
查看SElinux是否开启 查看是否开启SELinux,如果是未开启则是diabled,enforcing(enforce的分词,正在执行的意思),表明开启 #getenforce 临时关闭S ...
- mybatis知识点(已掌握)
1.${} 和 #{} 的区别? ${} 直接显示传入数据,不能防止sql注入,一般用于传数据库对象(比如表名). #{} 传入数据被当成字符串,自动加上双引号,防止sql注入. 2.有哪些Execu ...