如何在 Python 中使用 JSON 模块 – 初学者指南

本文详细介绍了如何在 Python 中使用 JSON 模块,包括存储和读取 JSON 数据、格式化输出、自定义对象编码解码、以及从 JSON 创建 Python 对象。JSON 是一种轻量级的数据交换格式,广泛应用于现代编程语言,Python 的内置 JSON 模块提供了一系列方法简化了这一过程。
摘要由CSDN通过智能技术生成

JSON(JavaScript 对象表示法)是一种流行的轻量级数据交换标准。它表示由键值对组成的数据结构,非常简单且易于理解。

JSON 已成为在线服务之间数据交换的行业标准。它广泛应用于现代编程语言中,包括 Python。

JSON 数据经常表示为嵌套字典、列表和标量值,例如文本、数字、布尔值和 null。它被命名为 JSON,因为它非常模仿 JavaScript 对象中使用的语法。

在本教程中,您将探索 Python 中的 JSON 模块并学习如何有效地使用 JSON 数据。

Python 内置 JSON 模块

JSON 在 Python 编程中发挥着重要作用,因为它允许高效的数据序列化和反序列化。它使 Python 程序能够轻松地与 Web 服务通信、交换数据并存储结构化信息。

开发人员可以使用 JSON 将其 Python 程序与使用 JSON 进行数据表示的各种 API、数据库和外部系统无缝链接。

Python 中的内置 JSON 模块提供了一组强大的方法和类,使 JSON 数据的处理变得简单。开发人员可以使用它将 Python 对象编码为 JSON 字符串,并将 JSON 字符串解码回 Python 对象。

如何在文件中存储 JSON 数据

在 Python 中处理 JSON 数据时,您经常需要保存数据或与其他人共享数据。将 JSON 数据存储在文件中可以实现快速检索和数据持久化。

在本节中,您将学习如何使用Python的json.dump()函数将JSON数据保存到文件中。此过程涉及序列化 JSON 数据并将其保存到文件中,您随后可以根据需要读取和使用该文件。

功能json.dump()_

Python 中的函数json.dump()允许您将 JSON 数据直接存储到文件中。该函数有两个参数:要序列化的数据和将写入数据的文件对象。

要将 JSON 数据写入文件,您需要执行几个步骤。首先,您需要以写入模式打开一个文件,并指定文件路径。然后,您可以使用该json.dump()函数序列化数据并将其写入文件。最后,您需要关闭文件以确保所有数据均正确保存。

让我们以星座 API 响应为例,了解如何将数据存储在文件中。

假设您已向以下 URL 发出 GET 请求:https://horoscope-app-api.vercel.app/api/v1/get-horoscope/daily?sign=capricorn&day=today该 URL 提供摩羯座的每日星座运势符号。

<span style="color:var(--gray85)"><code class="language-python"><span style="color:#0077aa">import</span> requests
<span style="color:#0077aa">import</span> json

<span style="color:#708090"># Make the GET request to the horoscope API</span>
response <span style="background-color:rgba(255, 255, 255, 0.5)"><span style="color:#9a6e3a">=</span></span> requests<span style="color:#999999">.</span>get<span style="color:#999999">(</span><span style="color:#669900">"https://horoscope-app-api.vercel.app/api/v1/get-horoscope/daily?sign=capricorn&day=today"</span><span style="color:#999999">)</span>
data <span style="background-color:rgba(255, 255, 255, 0.5)"><span style="color:#9a6e3a">=</span></span> response<span style="color:#999999">.</span>json<span style="color:#999999">(</span><span style="color:#999999">)</span>  <span style="color:#708090"># Convert the response to JSON</span>

<span style="color:#708090"># Store the JSON data in a file</span>
<span style="color:#0077aa">with</span> <span style="color:#669900">open</span><span style="color:#999999">(</span><span style="color:#669900">"horoscope_data.json"</span><span style="color:#999999">,</span> <span style="color:#669900">"w"</span><span style="color:#999999">)</span> <span style="color:#0077aa">as</span> <span style="color:#669900">file</span><span style="color:#999999">:</span>
    json<span style="color:#999999">.</span>dump<span style="color:#999999">(</span>data<span style="color:#999999">,</span> <span style="color:#669900">file</span><span style="color:#999999">)</span>

<span style="color:#0077aa">print</span><span style="color:#999999">(</span><span style="color:#669900">"Data stored successfully!"</span><span style="color:#999999">)</span></code></span>

在上面的代码中,您使用该库向Horscope APIrequests发出 GET 请求。然后,您可以使用该方法从响应中提取 JSON 数据。最后,使用该语句打开一个以写入模式命名的文件,并用于将数据存储在该文件中。.json()horoscope_data.jsonwithjson.dump()

如果打开该horoscope_data.json文件,您将看到类似以下内容:

<span style="color:var(--gray85)"><code class="language-json"><span style="color:#999999">{</span>
  <span style="color:#990055">"data"</span><span style="background-color:rgba(255, 255, 255, 0.5)"><span style="color:#9a6e3a">:</span></span> <span style="color:#999999">{</span>
    <span style="color:#990055">"date"</span><span style="background-color:rgba(255, 255, 255, 0.5)"><span style="color:#9a6e3a">:</span></span> <span style="color:#669900">"Jun 3, 2023"</span><span style="color:#999999">,</span>
    <span style="color:#990055">"horoscope_data"</span><span style="background-color:rgba(255, 255, 255, 0.5)"><span style="color:#9a6e3a">:</span></span> <span style="color:#669900">"The forecast today is stormy. You may have sensed that there was some tension clouding the conversation at home. Resentments were left unsaid and subtle power games were played without resolution. Today, Capricorn, it all becomes too unbearable for you. Regardless of the risks involved, you will take measures to clear things up."</span>
  <span style="color:#999999">}</span><span style="color:#999999">,</span>
  <span style="color:#990055">"status"</span><span style="background-color:rgba(255, 255, 255, 0.5)"><span style="color:#9a6e3a">:</span></span> <span style="color:#990055">200</span><span style="color:#999999">,</span>
  <span style="color:#990055">"success"</span><span style="background-color:rgba(255, 255, 255, 0.5)"><span style="color:#9a6e3a">:</span></span> <span style="color:#990055">true</span>
<span style="color:#999999">}</span></code></span>

如何从 JSON 文件检索数据

您经常需要从 JSON 文件读取数据。例如&#x

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值