第三十五节,json数据类型转换字符串模块
在使用json模块时需要先 import json 引入模块
json.dumps()模块函数
功能:将Python数据类型转换成字符串【有参】
使用方法:json.dumps(要转换的数据类型变量)
格式如:json.dumps(yhxxi)
注意:不支持元祖
#!/usr/bin/env python
# -*- coding:utf8 -*-
import json
yhxxi = { #创建一个嵌套字典
1:{
"yonghu":"liguixiou",
"mima":"",
"youjian":"729088188@qq.com",
"zichan":700,
},
2:{
"yonghu":"liguixiou2",
"mima":"",
"youjian":"7290881882@qq.com",
"zichan":7002,
}
}
a = json.dumps(yhxxi) #将字典转换成字符串格式
print(a) #打印转换的字符串格式
b = open("yh.txt", "w") #以写入模式打开文件
b.write(a) #将转换的字符串写入文件
b.close() #关闭打开的文件
#输出
# {"1": {"youjian": "729088188@qq.com", "yonghu": "liguixiou", "mima": "12345", "zichan": 700}, "2": {"youjian": "7290881882@qq.com", "yonghu": "liguixiou2", "mima": "123452", "zichan": 7002}}
列2
#!/usr/bin/env python
# -*- coding:utf8 -*-
import json
a = [1,2,3,4,5,6,7,8] #列表
b = json.dumps(a) #将列表转换成字符串
print(b)
print(type(b)) #查看数据类型 a2 = {"desc":"OK","status":1000} #字典
b2 = json.dumps(a2) #将字典转换成字符串
print(b2)
print(type(b2)) #查看数据类型 #输出
# [1, 2, 3, 4, 5, 6, 7, 8]
# <class 'str'>
# {"desc": "OK", "status": 1000}
# <class 'str'>
json.loads()模块函数
功能:将字符串还原它本来的数据类型【有参】
使用方法:json.loads(要还原的字符串变量)
格式如:json.loads(b)
注意:不支持元祖
#!/usr/bin/env python
# -*- coding:utf8 -*-
import json a = open("yh.txt", "r") #以读模式打开文件
b = a.read() #读出文件里的字符串内容
a.close() #关闭打开的文件
print(b) #打印出读出的字符串内容 c = json.loads(b) #将字符串还原它本来的数据类型
print(c) #打印出还原的数据类型
#输出
# {"1": {"yonghu": "liguixiou", "zichan": 700, "youjian": "729088188@qq.com", "mima": "12345"}, "2": {"yonghu": "liguixiou2", "zichan": 7002, "youjian": "7290881882@qq.com", "mima": "123452"}}
# {'1': {'yonghu': 'liguixiou', 'zichan': 700, 'mima': '12345', 'youjian': '729088188@qq.com'}, '2': {'yonghu': 'liguixiou2', 'zichan': 7002, 'mima': '123452', 'youjian': '7290881882@qq.com'}}
列2
#!/usr/bin/env python
# -*- coding:utf8 -*-
import json
a = "[1,2,3,4,5,6,7,8]" #列表样式字符串
b = json.loads(a) #还原成python识别的列表
print(b)
print(type(b)) #查看数据类型 a2 = '{"desc":"OK","status":1000}' #字典样式字符串,注意:字典的单引号和双单引号,字典内部元素是字符串必须是双单引号
b2 = json.loads(a2) #还原成python识别的字典
print(b2)
print(type(b2)) #查看数据类型 #输出
# [1, 2, 3, 4, 5, 6, 7, 8]
# <class 'list'>
# {'status': 1000, 'desc': 'OK'}
# <class 'dict'>
json.dump()模块函数
功能:将Python数据类型转换成字符串,直接写入文件【有参】
使用方法:json.dump(要写入的数据类型变量,打开文件的句柄变量)
格式如:json.dump(a,b)
注意:json.dump()写入文件可以直接写入,不需要write()函数即可写入
#!/usr/bin/env python
# -*- coding:utf8 -*-
import json a = ["你好", "我好", "他好"] #创建一个列表
b = open("yh.txt", "w") #以写入模式打开一个文件
json.dump(a,b) #将Python数据类型转换成字符串,直接写入文件
b.close() #关闭打开的文件 #此时yh.txt文件里已经写入 ["\u4f60\u597d", "\u6211\u597d", "\u4ed6\u597d"]
json.load()模块函数
功能:读出文件里的字符串,还原它本来的数据类型【有参】
使用方法:json.load(打开文件的句柄变量)
格式如:json.load(a)
注意:json.load()读出文件可以直接读出,不需要read()函数即可读出
#!/usr/bin/env python
# -*- coding:utf8 -*-
import json a = open("yh.txt", "r") #以读出模式打开文件
b = json.load(a) #读出文件里的字符串,还原它本来的数据类型
print(b) #打印出还原的数据类型
#输出
#['你好', '我好', '他好']
第三十五节,json数据类型转换字符串模块的更多相关文章
- centos shell脚本编程1 正则 shell脚本结构 read命令 date命令的用法 shell中的逻辑判断 if 判断文件、目录属性 shell数组简单用法 $( ) 和${ } 和$(( )) 与 sh -n sh -x sh -v 第三十五节课
centos shell脚本编程1 正则 shell脚本结构 read命令 date命令的用法 shell中的逻辑判断 if 判断文件.目录属性 shell数组简单用法 $( ) 和$ ...
- 风炫安全web安全学习第三十五节课 文件下载和文件读取漏洞
风炫安全web安全学习第三十五节课 文件下载和文件读取漏洞 0x03 任意文件下载漏洞 一些网站由于业务需求,往往需要提供文件下载功能,但若对用户下载的文件不做限制,则恶意用户就能够下载任意敏感文件, ...
- 第三百三十五节,web爬虫讲解2—Scrapy框架爬虫—豆瓣登录与利用打码接口实现自动识别验证码
第三百三十五节,web爬虫讲解2—Scrapy框架爬虫—豆瓣登录与利用打码接口实现自动识别验证码 打码接口文件 # -*- coding: cp936 -*- import sys import os ...
- 第三十五节,目标检测之YOLO算法详解
Redmon, J., Divvala, S., Girshick, R., Farhadi, A.: You only look once: Unified, real-time object de ...
- 第二百三十五节,Bootstrap栅格系统
Bootstrap栅格系统 学习要点: 1.移动设备优先 2.布局容器 3.栅格系统 本节课我们主要学习一下 Bootstrap 的栅格系统,提供了一套响应式.移动设备优先的流 式栅格系统. 一.移动 ...
- 第一百三十五节,JavaScript,封装库--拖拽
JavaScript,封装库--拖拽 封装库新增1个拖拽方法 /** tuo_zhuai()方法,将一个弹窗元素实现拖拽功能 * 注意:一般需要在css文件将元素里的某一个区块光标设置成提示可以拖拽, ...
- [ExtJS5学习笔记]第三十五节 sencha extjs 5 组件查询方法总结
一个UI前台组件肯定会比较多,我们通常习惯性的使用ID来获取需要操作的组件,但是这种方法是extjs推荐的么?有没有extjs推荐使用的获取组件的方法呢? 目录 目录 extjs的查询组件的API 查 ...
- 第五十五节,IO多路复用select模块加socket模块,伪多线并发
IO多路复用select模块加socket模块,伪多线并发,并不是真正的多线程并发,实际通过循环等待还是一个一个处理的 IO多路复用,lo就是文件或数据的输入输出,IO多路复用就是可以多用户操作 IO ...
- 第三十六节,目标检测之yolo源码解析
在一个月前,我就已经介绍了yolo目标检测的原理,后来也把tensorflow实现代码仔细看了一遍.但是由于这个暑假事情比较大,就一直搁浅了下来,趁今天有时间,就把源码解析一下.关于yolo目标检测的 ...
随机推荐
- spark-2.0.0与hive-1.2.1整合
SparkSQL与Hive的整合 1. 拷贝$HIVE_HOME/conf/hive-site.xml和hive-log4j.properties到 $SPARK_HOME/conf/ 2. 在$SP ...
- final使用
final修饰 基本数据类型时候 对应的 数据不能改变:::final修饰 对象类型 ,那么对应的引用地址不能改变(对象中的值可以改变): 如果final修改方法,那么该方法不能被子类重写 :: ...
- javaWEB总结(9):自定义HttpServlet
前言:我们知道 MyHttpServlet是MyGenericServlet的子类,MyHttpServlet会继承父类的方法,可是却很少去追问MyHttpServlet中的doGet方法和doPos ...
- 整屏滚动效果 jquery.fullPage.js插件+CSS3实现
最近很流行整屏滚动的效果,无论是在PC端还是移动端,本人也借机学习了一下,主要通过jquery.funnPage.js插件+CSS3实现效果. 本人做的效果: PC端:http://demo.qpdi ...
- [妙味JS基础]第十课:日期对象、时钟倒计时
知识点总结 时间.年.月.日.时.分.秒 new Date() ->当前系统的时间对象 数字类型: getFullYear().getYear().getUTCFullYear() getYea ...
- [妙味DOM]第三课:Event-事件详解1
知识点总结 焦点事件 onfocus 获取焦点 onblur 失点焦点 obj.focus() 给指定元素设置焦点 obj.blur() 取消指定元素的焦点 obj.select() 选择指定元素里的 ...
- thinkphp 匹配qq 表情
<?php// 匹配qq表情 function replace_phiz($content){ preg_match_all('/\[.*?\]/is',$content,$ ...
- Linux启动kettle及linux和windows中kettle往hdfs中写数据(3)
在xmanager中的xshell运行进入图形化界面 sh spoon.sh 新建一个job
- LeetCode OJ 229. Majority Element II
Given an integer array of size n, find all elements that appear more than ⌊ n/3 ⌋ times. The algorit ...
- solr定时增量索引
当数据库的数据发生改变的时候,我们不想手动的去重新添加数据库的数据导solr索引库中,所以用到定时添加索引.增删改的数据.现在写的这些都是基于我之前做的一步步到这来的. 将solr/dist下的sol ...