Python如何读取、写入JSON数据

下面就给您详细讲解一下Python如何读取、写入JSON数据。

什么是JSON数据?

JSON,全称 JavaScript Object Notation,是一种轻量级的数据交换格式,通常用于Web程序中将数据从服务器传输到客户端。JSON格式的数据由键值对构成,类似于Python中的字典类型。值可以是数字、字符串、布尔、列表、字典和null。

以下是一个JSON格式的数据示例:

{
    "name": "John",
    "age": 30,
    "isStudent": true,
    "hobbies": ["reading", "swimming"],
    "address": {
        "city": "New York",
        "postcode": "10001"
    },
    "friends": [
        {"name": "Mary", "age": 28},
        {"name": "Tom", "age": 32}
    ]
}

读取JSON数据

Python内置了json模块,可以轻松读取JSON格式的数据。具体操作步骤如下:

  1. 定义JSON文件路径
    如下为一个data.json文件,其中包含了JSON格式的数据。
{
    "name": "Alice",
    "age": 20,
    "grades": [80, 90, 85],
    "address": {
        "city": "Beijing",
        "postcode": "100000"
    }
}
  1. 使用json.load()函数读取数据
    json.load()函数可以从JSON文件中读取数据,并将其转换成Python字典类型。代码示例如下:
import json

file_path = "data.json"

# 读取JSON格式数据
with open(file_path, "r", encoding="utf-8") as f:
    data = json.load(f)

# 打印读取的数据
print(data)

运行结果为:

{'name': 'Alice', 'age': 20, 'grades': [80, 90, 85], 'address': {'city': 'Beijing', 'postcode': '100000'}}

写入JSON数据

如果想将Python格式的数据写入到JSON文件,也可使用json.dump()函数。具体操作步骤如下:

  1. 定义Python格式的数据
    如下为一个Python字典类型的数据。
import json

data = {
    "name": "Bob",
    "age": 25,
    "grades": [70, 85, 75],
    "address": {
        "city": "Shanghai",
        "postcode": "200000"
    }
}
  1. 使用json.dump()函数写入数据
    json.dump()函数可以将Python字典类型的数据转换成JSON格式,并写入到指定的文件中。代码示例如下:
import json

file_path = "output.json"

# 写入JSON格式数据
with open(file_path, "w", encoding="utf-8") as f:
    json.dump(data, f)

# 打印文件内容
with open(file_path, "r", encoding="utf-8") as f:
    content = f.read()

print(content)

运行结果为:

{"name": "Bob", "age": 25, "grades": [70, 85, 75], "address": {"city": "Shanghai", "postcode": "200000"}}

以上就是Python读取、写入JSON数据的完整攻略。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python如何读取、写入JSON数据 - Python技术站

(0)
上一篇 2023年5月20日
下一篇 2023年5月20日

相关文章

  • 详解Python 避易就难的柯里化

    面对“避易就难”的柯里化,我们不妨从简单的例子开始讲起。 什么是柯里化? 柯里化是一种函数式编程思想,在函数式编程中柯里化是指将一个具有多个参数的函数转化为一系列只有单个参数的函数的过程。 具体来说,在柯里化过程中,我们将一个函数f(x,y,z,…)转化为f(x)(y)(z)…,其中新的函数f(x)返回一个接受参数y的函数,而这个新的函数f(x)(y…

    python-answer 2023年3月25日
    00
  • python并发爬虫实用工具tomorrow实用解析

    介绍 tomorrow 是一个使用 python 开发的并发爬虫工具,可以实现简单的多线程/多进程执行代码,并且非常易于使用。这个工具的特点就是:它能够自动将一个函数转化为一个线程或进程,并且允许你设置线程和进程池的大小。在使用 tomorrow 来实现爬虫的时候,我们只需要将爬虫函数用 @tomorrow.thread 或 @tomorrow.proces…

    python 2023年5月19日
    00
  • Python编程对列表中字典元素进行排序的方法详解

    当我们的列表中包含了多个字典元素时,我们有时需要对这些字典元素以某种特定方式进行排序。Python提供了多种实现方法,本篇攻略将对 Python 进行对列表中字典元素进行排序的方法进行详细讲解。 方法一:使用sorted函数 sorted函数是Python自带的排序函数,它可以对任意可迭代对象进行排序。和其他的排序方法不同,sorted函数只会返回排序后的结…

    python 2023年5月13日
    00
  • CentOS中升级Python版本的方法详解

    当使用CentOS操作系统时,很多情况下需要升级Python版本以满足用户的需求。本文将详细介绍在CentOS中升级Python版本的方法。 准备工作 在开始操作前,需要确保系统中已经安装了一些必要的工具和软件,包括: wget gcc zlib-devel readline-devel bzip2-devel sqlite-devel 运行以下命令来安装这…

    python 2023年5月30日
    00
  • Python迭代器Iterable判断方法解析

    当我们遇到一个新的对象想判断它是否为可迭代(Iterable)对象时,需要用到isinstance()方法判断。 判断代码为: from collections.abc import Iterable a = [1, 2, 3] b = ‘abc’ c = {‘name’: ‘Tom’, ‘age’: 18} print(isinstance(a, Iter…

    python 2023年6月3日
    00
  • Python强化练习之Tensorflow2 opp算法实现月球登陆器

    Python强化练习之Tensorflow2opp算法实现月球登陆器 本文将介绍如何使用Tensorflow 2.0实现opp算法来控制月球登陆器的着陆。我们将介绍opp算法的原理实现步骤,并提供两个示例,分别演示如何使用Python实现简单和复杂的月球着陆控制。 opp法原理 opp算法是一种基于模型预测控制(MPC)的控制法。该算法通过预测未来状态来计算…

    python 2023年5月14日
    00
  • PyQt5每天必学之关闭窗口

    关闭窗口是PyQt5中非常基础、必学的操作之一。下面是PyQt5每天必学之关闭窗口的完整攻略: 1. 关闭窗口 在PyQt5中,关闭窗口的最常见方法是使用 close() 方法来实现。在实际应用中,可以在窗口上添加关闭按钮,当用户点击关闭按钮时,调用 close() 方法来关闭窗口。 以下是一个简单的代码示例: import sys from PyQt5.Q…

    python 2023年6月13日
    00
  • Python lxml库的简单介绍及基本使用讲解

    下面是详细的攻略: Python lxml库的简单介绍及基本使用讲解 Python lxml库是一个用于处理XML和HTML文档的Python库。它提供了一组简单易用的API,可以方便地解析和操作XML和HTML文档。本文将介绍Python lxml库的基本使用方法。 安装Python lxml库 在使用Python lxml库之前,我们需要先安装它。可以使…

    python 2023年5月14日
    00
合作推广
合作推广
分享本页
返回顶部