内容大纲

    1: 为什么要学习json模块

      >1:因为网络之间的通信,还有不同语言之间的相互内容沟通,需要用到json 模式进行沟通

      >2:写入部分文件用json文件保存,

    2:json的序列化 

      json.dumps(iterable)

dic ={'k1':'v1','k2':'v2','k3':'v3'}
str_dic =json.dumps(dic)
print(str_dic)
>>>>>>
{"k1": "v1", "k2": "v2", "k3": "v3"}

    3:将json 转化成字典

      json.loads(json模式的内容)

dic ={'k1':'v1','k2':'v2','k3':'v3'}
str_dic =json.dumps(dic)
# print(str_dic)
#将json 转成字典模式
dic1 =json.loads(str_dic)
print(dic1)
>>>>>
{'k1': 'v1', 'k2': 'v2', 'k3': 'v3'}

    4:自动把所有的' '  变成 " "

      json.dumps()      因为json 的模式就是 " "

list_dic =[1,['a','b','c','d'],3,{'k1':'v1','k2':'v2','k3':'v3'}]
str =json.dumps(list_dic)
print(str)
>>>>>
[1, ["a", "b", "c", "d"], 3, {"k1": "v1", "k2": "v2", "k3": "v3"}]

    5:json 写入文件

      dump(iteaber,句柄)

dic ={'k1':'v1','k2':'v2','k3':'v3'}
# json 写入文件
with open('123.json','w',encoding='utf-8') as f:
json.dump(dic,f)

    6:读取json文件

      json.load(句柄)

with open('123.json','r',encoding='utf-8') as f1:
ret =json.load(f1)
print(ret)

    7:将多个json 写入json文件

将多个json 文件写入文件
dic1 = {'name': '春哥'}
dic2 = {'name': '子伍'}
dic3 = {'name': '王子'}
with open('duo.json','w',encoding='utf-8') as f2:
json.dump(dic1,f2)
f2.write('\n')
json.dump(dic2,f2)
f2.write('\n') #注意换行, 因为读的时候是for 循环句柄
json.dump(dic3,f2)
f2.write(json.dumps(dic1)+'\n')
f2.write(json.dumps(dic2)+'\n')
f2.write(json.dumps(dic3)+'\n')
with open('duo.json','r',encoding='utf-8') as f3:
for line in f3:
ret =json.loads(line)
print(ret)
ret =json.loads(f3.read())
print(ret)

    8:  

json 模块的基本使用学习的更多相关文章

  1. python学习第四十八天json模块与pickle模块差异

    在开发过程中,字符串和python数据类型进行转换,下面比较python学习第四十八天json模块与pickle模块差异. json 的优点和缺点 优点  跨语言,体积小 缺点 只能支持 int st ...

  2. 【python标准库模块四】Json模块和Pickle模块学习

    Json模块 原来有个eval函数能能够从字符串中提取出对应的数据类型,比如"{"name":"zhangsan"}",可以提取出一个字典. ...

  3. python学习笔记(四)random 、json模块

    一.模块简介 Python 模块(Module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语句. 导入模块 import module #导入模块 f ...

  4. Python学习笔记:json模块和pickle模块(数据序列化)

    Python中的json模块和pickle都是用于数据的序列化和反序列化,它们提供的方法也是一样的:dumps,dump,loads,load dumps(obj):将对象序列化为str. dump( ...

  5. python学习-49 json模块

    json模块 --------将任何类型都转换为json字符串 方法dumps import json dic={"name":"abc"} data = js ...

  6. Json模块的详细介绍(序列化)

    什么叫序列化——将原本的字典.列表等内容转换成一个字符串的过程就叫做序列化. 比如,我们在python代码中计算的一个数据需要给另外一段程序使用,那我们怎么给? 现在我们能想到的方法就是存在文件里,然 ...

  7. python基础(20):序列化、json模块、pickle模块

    1. 序列化 什么叫序列化——将原本的字典.列表等内容转换成一个字符串的过程就叫做序列化. 1.1 为什么要有序列化 为什么要把其他数据类型转换成字符串?因为能够在网络上传输的只能是bytes,而能够 ...

  8. 时间模块之datatime模块、os模块、sys模块、json模块、json模块实操

    目录 一.模块的绝对导入和相对导入 二.包的概念 三.编程思想的转变 四.软件开发目录规范 五.常见的内置模块 一.时间模块之datatime模块 1.datetime.datetime.today( ...

  9. python的json模块

    Python JSON 本章节我们将为大家介绍如何使用 Python 语言来编码和解码 JSON 对象. 环境配置 在使用 Python 编码或解码 JSON 数据前,我们需要先安装 JSON 模块. ...

随机推荐

  1. LinuxC编程怎么MakeFile

    在linux下我们都知道可以利用命令gcc hello.c -o hello 命令来变异c语言程序.其中gcc hello.c -o hello中 hello是给这个编译后生成的可执行文件取个别名 再 ...

  2. php模拟http请求

    在http简析中,我们提到了浏览器请求资源的一个流程,那么这个流程能不能用php来模拟呢?答案是肯定的. php模拟http请求需要实现以下步骤: 1.连接apache服务器 使用fsockopen: ...

  3. Create Empty Project In Vs But Not Debug?

    问题描述 在使用VS创建一个空的项目管理,然后,添加项目.可是,这个时候,项目虽然可以运行,但是不能Debug进行调试. 解决方法 按照下面三张图像的设置即可.

  4. Java 设计模式系列(十三)模板方法

    Java 设计模式系列(十三)模板方法 模板方法模式是类的行为模式.准备一个抽象类,将部分逻辑以具体方法以及具体构造函数的形式实现,然后声明一些抽象方法来迫使子类实现剩余的逻辑.不同的子类可以以不同的 ...

  5. Spring MVC之RequestMappingHandlerAdapter初始化

    RequestMappingHandlerAdapter基于注解的处理器适配器,目的是用来执行handler,同时返回modelAndView给前端控制器,这块个人感觉是spring mvc的核心了, ...

  6. Eclipse下初用lucene

    lucene是apache的一个开源项目,一个开放源代码的全文检索引擎工具包. 1. 首先下载lucene,下载地址来自<lucene实战>第2版(页面加载比较忙,等~) http://w ...

  7. CLOB 和 BLOB

    An SQL CLOB is a built-in type that stores a Character Large Object as a column value in a row of a ...

  8. PHP(十二)文件操作

  9. 关于SQLServer无法对数据库'XXX'执行删除,因为它正用于复制。错误:'3724' 的解决方案

    关于这个错误,是因为在服务器上想把数据库复制到本地,使用了“发布.订阅”方案,结果后来没成功,删除本地数据库的时候出现了这个错误,说“无法对数据库'XXX'执行删除,因为它正用于复制”. 解决方案:只 ...

  10. Android-自定义联系人快速索引

    效果图: 布局去指定 view.custom.shangguigucustomview.MyCustomIndexView 自定义View对象 <!-- 自定义联系人快速索引 --> &l ...