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日

相关文章

  • 解决运行django程序出错问题 ‘str’object has no attribute’_meta’

    解决运行django程序出错问题’str’object has no attribute ‘_meta’的完整攻略如下: 问题描述 当运行Django程序时,可能会遇到如下的错误信息:’str’ object has no attribute ‘_meta’。这通常是因为程序中存在些问题,例如在定义Django模型类时,可能会出现在某个字段处使用了字符串类型…

    python 2023年5月13日
    00
  • python怎么运行py文件?.py文件cmd命令方法及环境变量配置教程

    Python怎么运行.py文件? 直接运行.py文件 Python安装成功后,我们就可以直接在cmd命令提示符中运行.py文件了。只需要使用以下命令: python xxx.py 其中,xxx代表你的.py文件名。如果文件不在当前目录下,需要输入完整路径。如: python D:\test\hello.py 这样就可以直接执行hello.py文件了。 使用环…

    python 2023年5月30日
    00
  • Python之集合详解

    Python之集合详解 在Python中,集合(set)是一种无序、不重复的数据类型。集合中的元素必须是可哈希的,因不能包含可变类型的元素,例如列表、字典等。本文将细介绍Python中集合的定义、操作和常用方法,并提两个示例说明。 集合的定义 在Python中,可以使用花号{}或set()函数来定义集合。例如: # 定集合 my_set = {1, 2, 3…

    python 2023年5月13日
    00
  • Python实现判断字符串中包含某个字符的判断函数示例

    Python中判断字符串中包含某个字符的判断函数可以使用in关键字实现。其语法如下: if char in string: # 包含某个字符 else: # 不包含某个字符 其中,char代表要查找的字符,string代表要进行查找的字符串。如果string中包含了char,则执行if语句后面的代码块;如果string中不包含char,则执行else语句后面…

    python 2023年6月5日
    00
  • Python时间差中seconds和total_seconds的区别详解

    Python时间差中seconds和total_seconds的区别详解 在使用Python中的datetime库进行时间计算时,经常会遇到计算时间差(timedelta)的情况。其中,timedelta对象拥有seconds属性和total_seconds()方法,它们都可以用来计算时间差。本文将深入解析seconds和total_seconds之间的区别…

    python 2023年6月2日
    00
  • Python中list列表的一些进阶使用方法介绍

    Python中list列表的一些进阶使用方法介绍 在Python中,列表(List)是一种有序的集合,可以存储任意类型的数据,包数字、字符串、甚至是其他列表。除了基的创建、访问、添加、删除、排序等操作,文将介绍Python中list列表的一些进阶使用方法,包括列表推导式、片、zip()函数等,并提供两个实例。 列表推导式 列表推导式是一种简洁的创建列表的方式…

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

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

    python 2023年5月14日
    00
  • 在 Python 中如何将天数添加到日期

    问题: 如何在 Python 中将一定数量的天数添加到日期对象上? 解决方法: 通过 datetime 模块来实现。 在 Python 中,你可以使用 datetime 模块中的 date 对象和 timedelta 对象来完成日期的计算操作,其中 date 对象表示一个具体的日期,timedelta 对象表示日期间隔。 以当前日期为例,以下是添加一定天数后…

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