关于python中json使用的那些事

json语法规则

数据是名称/值对
数据由逗号分隔
花括号保存对象
方括号保存数组
例子:

{
"employees":[
    {"firstName":"Bill", "lastName":"Gates"}, 
    {"firstName":"Steve", "lastName":"Jobs"},
    {"firstName":"Alan", "lastName":"Turing"}
]
}

16进制解析成utf-8

有时候一个返回的数据为16进制编码的,我们需要将其转化为utf-8模式
利用decode函数

res=code_16.decode('utf-8') 
#code_16是16进制编码的数据

列表转化为json格式编码存入文件

导入json模块,利用json.dump()和json.load()方法

import json
#待存储列表:
data_list=['auto.pdf', 'auto_test2.pdf', 'auto_test4.pdf', 'podofo移植记录.pdf', 'test_2.pdf', 'test_3.pdf']
#打开文件 ,用json.dump的方式存入文件
with open("json_test_1.json","w") as f:
    json.dump(data_list,f)
#打开文件,用json.load方式读出文件
with open("json_test_1.json","r") as f:
    read_list=json.load(f)
##用json.dump方式存入的文件就要用json.load方式去读出,否则遇到中文字符串时可能会出现乱码

打印出来的结果:
在这里插入图片描述

展开来讲一下常用的几个json函数json.dumps()和json.loads():
在这里插入图片描述

https://blog.csdn.net/weixin_40636692/article/details/81212304

python中文件的读写

python中文件的读写一共有三者中,读、写、追加

读模式 r

读模式r特点:(1)只能读,不能写;(2)文件不存在时会报错。
解析:

a、用open打开文件,在python3中只有open。python2可以用open和file。关闭文件是close()。一般有开就有关
b、如果在当前目录,可以直接写文件名,否则需添加路径。
c、如果不写 ‘r’,即写成 f = open(‘books.txt’),也是默认读模式。
d、read可以将文件所有的内容都读出来
e、另外,有时需要添加解码格式 encoding ,格式为:
f = open(‘books’,‘r’,encoding=‘utf-8’)

(2)
read:读取文件全部内容
readline:读取一行
readlines:读取每一行,并且放到一个list里

#也可以使用with open的方法来打开文件
with open("test_1.txt","r") as f:
	my_str=f.read()

读写模式r+

读写模式r+特点:(1)文件不存在时会报错;(2)可以读,也可以写,是覆盖写,会把文件最前面的内容覆盖

写模式w和写读模式w+

1、写模式w特点:
(1)只能写,不能读;
(2)写的时候会把原来文件的内容清空;
(3)当文件不存在时,会创建新文件。

f.flush():有时我们用f.write()后,会发现没有写入文件,这是因为内容存在了缓冲区,需要等缓冲区满了之后,再把所有数据写入。此时可以用f.flush()强制把缓冲区里面的数据写到磁盘上。

2、写读模式w+特点:
(1)可以写,也可以读;
(2)写的时候会把原来文件的内容清空(覆写);
(3)当文件不存在时,会创建新文件。

追加模式a和追加读模式a+

1、追加模式a特点:
(1)不能读;
(2)可以写,是追加写,即在原内容末尾添加新内容;
(3)当文件不存在时,创建新文件。

2、追加读a+模式特点:
(1)可读可写;
(2)写的时候是追加写,即在原内容末尾添加新内容;
(3)当文件不存在时,创建新文件。

文件读写方式总结

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值