内容大纲

    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. oracle返回最大值一条记录

    虽然网上例子很多,但是试过多种办法都无效,原代码出处: https://blog.csdn.net/qyshibb/article/details/73332075 这个例子简单有效 select p ...

  2. Ubuntu开机自动挂载分区

    虽然我基本上都是使用Linux的,但是仍然有些时候需要切换到Windows(双系统),如果所有的分区都使用ext4等Linux分区格式,则在Windows下访问十分不方便. 因此,我一般会将一些两个系 ...

  3. 将Halcon导出的多个dxf文件合并成一个分图层的dxf文件

    Halcon中可以通过concat_obj合并多个XLD,并且可以通过write_contour_xld_dxf再将XLD保存为.dxf文件.但是,保存后的.dxf文件用AutoCAD打开后发现,它们 ...

  4. Python 关于数组矩阵变换函数numpy.nonzero(),numpy.multiply()用法

    1.numpy.nonzero(condition),返回参数condition(为数组或者矩阵)中非0元素的索引所形成的ndarray数组,同时也可以返回condition中布尔值为True的值索引 ...

  5. web端跨域调用webapi(转)

    在做Web开发中,常常会遇到跨域的问题,到目前为止,已经有非常多的跨域解决方案. 通过自己的研究以及在网上看了一些大神的博客,写了一个Demo 首先新建一个webapi的程序,如下图所示: 由于微软已 ...

  6. CodeForces 518A Vitaly and Strings (水题,字符串)

    题意:给定两个相同长度的字符串,让你找出一个字符串,字典序在两都之间. 析:这个题当时WA了好多次,后来才发现是这么水,我们只要把 s 串加上,然后和算数一样,该进位进位,然后再和 t 比较就行. 代 ...

  7. CodeForces 681B Economy Game (暴力)

    题意:给定一个数,问能不能 找到非负 a, b, c,使得 a × 1 234 567 + b × 123 456 + c × 1 234 = n. 析:二重循环,去确定c. 代码如下: #inclu ...

  8. C语言 void 万能类型

    C中 void类型其实是一种万能类型, 也就是说 我们的 void 可以代表任意一种类型,也就是说他的范围要比具体的一种类型要宽广, 例如: int *p = NULL;void *ptr = p; ...

  9. Linux守护进程编写方法及原理

    什么守护进程? 守护进程是运行在后台的一种用来提供服务的进程,他脱离控制台独立运行,守护进程是一种很有用的进 程. Linux的大多数服务器就是用守护进程实现的.比如,Internet服务器inetd ...

  10. Linux系统下安装ncurses库

    ncurses库是一个Linux系统下的图形支持的函数库,字符终端处理库,包括面板和菜单. 今天在安装ncurses库的时候遇到了一些问题,现将遇到的问题所叙如下: 首先说明:本次安装采用的是源码包的 ...