您现在的位置是:首页 > 正文

python读取和保存json文件

2024-04-01 00:53:52阅读 2

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

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

json的具体介绍和使用规范:https://www.json.org/json-en.html


本文将关于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文件中。就是这么简单。

 

网站文章

  • 求教:MyBatis的缓存到底有用吗?

    前言:今天看了下mybatis的缓存,发现其实这个缓存基本可以说是没有用的,以下是一些个人观点: 为什么没有用呢? 首先:MyBatis分为一级缓存和二级缓存 一级缓存:存在于SqlSession的生...

    2024-04-01 00:53:40
  • GitHub修改仓库文件

    GitHub修改仓库文件

    GitHub修改仓库文件1.初始化git环境:git init2.创建并修改本地文件(以README文件为例):vi README.md3.添加到暂存区:git add README.md4.保存提交...

    2024-04-01 00:53:31
  • postman接口测试教程和项目实战

    postman接口测试教程和项目实战

    接口指的是实体或者软件提供给外界的一种服务。因为接口能使我们的实体或者软件的内部数据能够被外部进行修改。从而使得内部和外部实现数据交互。所以需要接口。

    2024-04-01 00:53:05
  • cherno-opengl 学习笔记

    cherno-opengl 学习笔记

    2024-04-01 00:52:56
  • 187. Repeated DNA Sequences

    class Solution { public List<String> findRepeatedDnaSequences(String s) { Set<String> set=new HashSet<String>(); Set<String> res=new HashSet<String&...

    2024-04-01 00:52:47
  • openstack neutron L3 HA

    openstack neutron L3 HA

    Openstack Neutron L3的HA。

    2024-04-01 00:52:12
  • XSS 攻击案例

    XSS 攻击案例

    The attacker injects a payload in the website’s database by submitting a vulnerable form with some malicious JavaScriptThe victim requests the web page from the websiteThe website serves the vict...

    2024-04-01 00:52:05
  • ThinkPHP 项目笔记

    1、在模板当中调用PHP函数 生成1到5的

    2024-04-01 00:51:57
  • Vue3路由传值

    传递页面接收页面

    2024-04-01 00:51:28
  • js生成随机数

    JS随机数测试document.write(Math.random());//生成一个0~1之间的很多位数的随机小数document.write(Math.round(Math.random()*9+1));//生成一个1~10(包括1和10)的随机整数document.write(Math.round(Math.random()*90+10));/

    2024-04-01 00:51:21