python读取和保存json文件

json文件是一种常见的数据存储文件,比txt看着高级点,比xml看着人性化一点。

同时,json作为一种通用协议的文件格式,可以被各种语言方便地读取。所以,json非常适合用来存储结构化的数据

json的具体介绍和使用规范:JSON


本文将关于python读取json做一个小小的记录和总结。

1. 读取json

一般情况下的json文件,存储的是python中的一个dict。

如在"dabao.json"中有以下内容:

{
    "name": "dabao",
    "id":123,
    "hobby": {
        "sport": "basketball",
        "book": "python study"
    }
}

需要读取"dabao.json"的话,python脚本可以这么写:read_json.py

import json
f = open('dabao.json', 'r')
content = f.read()
a = json.loads(content)
print(type(a))
print(a)
f.close()

注意,需要先用open来读取文件,再用json.loads()将读取内容转化为python字典

2. python将字典保存成json

直接给代码:

import json
a = {
    "name": "dabao",
    "id":123,
    "hobby": {
        "sport": "basketball",
        "book": "python study"
    }
}
b = json.dumps(a)
f2 = open('new_json.json', 'w')
f2.write(b)
f2.close()

首先通过json.dumps()把dict降级为字符串。再将字符串写入json文件中。

    json_path = '**.json'
    with open(json_path, 'r') as json_file:
	    annos = json.load(json_file)

    jsonOrderedFile = json.dumps(annos, sort_keys=True, indent = 4)
    with open('**.json', 'w') as jsonfile:
        jsonfile.write(jsonOrderedFile)

JSON读取大量数据错误:JSONDecodeError: Extra data: line 2 column 1或者ValueError: Extra data: 类似错误处理

import json
 
# 由于文件中有多行,直接读取会出现错误,因此一行一行读取
file = open("papers.json", 'r', encoding='utf-8')
papers = []
for line in file.readlines():
    dic = json.loads(line)
    papers.append(dic)
 
 
print(len(papers))

  • 3
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值