0

0

Python程序从JSON响应中提取单个值

PHPz

PHPz

发布时间:2023-09-03 10:49:06

|

1766人浏览过

|

来源于tutorialspoint

转载

python程序从json响应中提取单个值

值提取是一个非常流行的编程概念,它被用于各种各样的操作中。然而,从 JSON 响应 中提取值是一个不同的概念。它帮助我们在复杂的数据集中构建逻辑并定位特定值。本文将解释可用于从 JSON 响应中提取单个值的各种方法。在开始值提取之前,让我们重点了解 JSON 响应的含义。

什么是 JSON 响应?

JSON(JavaScript 对象表示法)响应是一种广泛接受的数据格式,服务器通过它响应客户端的请求。每当客户端向服务器请求某些 API 或信息时,就会生成响应并将 API 传递给客户端。现在,这些信息以客户端和服务器都能理解数据的方式共享,为此我们需要统一的数据格式。

JSON 响应以 JSON 对象 的形式共享信息,这些信息可以转换为任何本地编程语言。由于我们使用的是 python 并且我们的任务是从此响应中检索单个值,因此我们将这些对象转换为字典。现在我们已经了解了 JSON 响应的简要知识,让我们了解提取部分。

使用 API 从 JSON 响应中提取值

在此方法中,我们将使用 API 端点从服务器检索数据。首先,我们将导入“requests”库来处理HTTP请求。然后,我们将使用“get()”方法向 API 端点发送“GET”请求。在此示例中,我们将使用“CoinDesk”API 端点来实时获取比特币价格指数 (BPI)。 JSON 对象借助“json()”方法转换为字典。然后解析这些字典以选择特定信息。

立即学习Python免费学习笔记(深入)”;

在这里,我们将通过访问嵌套对象来提取 BPI 值。字典键指的是某些属性和属性,它们的值指的是不同的数据类型。我们将使用键来提取单个和多个值。请参阅此链接获取官方文档 - https://apipheny.io/free-api/

API URL 链接 -https://api.coindesk.com/v1/bpi/currentprice.json

示例

以下是使用“CoinDesk”API 从 JSON 响应中提取单个值的示例 -

酷表ChatExcel
酷表ChatExcel

北大团队开发的通过聊天来操作Excel表格的AI工具

下载
import requests

print("Welcome to the live bitcoin Price index")
Json_data = requests.get('https://api.coindesk.com/v1/bpi/currentprice.json').json()

Disclaimer = Json_data["disclaimer"]
print(Disclaimer)

BPI = Json_data["bpi"]["USD"]["rate"]
print(f"The real time BPI value for the United states of America is: {BPI}")

TIME = Json_data["time"]["updated"]
print(f"The index was viewed at Universal time: {TIME}")

输出

Welcome to the live bitcoin Price index
This data was produced from the CoinDesk Bitcoin Price Index (USD). Non-USD currency data converted using hourly conversion rate from openexchangerates.org
The real time BPI value for the United states of America is: 25,978.6344
The index was viewed at Universal time: Jun 11, 2023 18:26:00 UTC

从本地 JSON 文件中提取单个值

此方法侧重于从系统上存储的 JSON 文件中提取单个值。我们将首先创建一个 JSON 文件,然后导入 JSON 模块以解码从“JASON 响应”检索到的数据。

这种方法类似于文件处理概念,我们加载 JSON 文件,然后以特定模式打开它。我们还可以更改此文件并借助不同的文件模式(例如“追加”、“二进制”、“只读”等)操作其内容。我们将使用本地文件 (DSC.json) 存储与猫相关的信息,我们将从名为“fact”的键中提取此信息。

示例

以下是一个示例 -

import json

try:
   with open("DSC.json", "r+") as file:
      Json_file = json.load(file)
   FACTS = Json_file["fact"]
   print(f"Here is a fact related to cats: \n{FACTS}")

except:
   print("File does not exist")

输出

Here is a fact related to cats: 
Mountain lions are strong jumpers, thanks to muscular hind legs that are longer than their front legs.

其他见解

我们还可以将 JSON 数据转换为字符串而不是字典,方法是将“JSON 对象”转储到元素中,然后借助“.JSON”将其加载到字符串中。 load()”方法。程序员在使用值提取概念时最常犯的错误是他们使用错误的键名称来访问值。此外,在处理嵌套对象时,我们必须使用正确的顺序来提取数据。以下是一个示例 –

data = Json_data["Parent object"]["Child object"]

这是提取正确值时遵循的层次结构。

结论

在本文中,我们介绍了价值提取的基础知识并理解了其重要性。我们还讨论了“JSON 响应”的机制以及如何从中提取单个值。在第一种方法中,我们使用 API 端点从服务器检索数据。在第二种nd方法中,我们直接从本地存储的 JSON 文件中提取值。

相关文章

python速学教程(入门到精通)
python速学教程(入门到精通)

python怎么学习?python怎么入门?python在哪学?python怎么学才快?不用担心,这里为大家提供了python速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
高德地图升级方法汇总
高德地图升级方法汇总

本专题整合了高德地图升级相关教程,阅读专题下面的文章了解更多详细内容。

4

2026.01.16

全民K歌得高分教程大全
全民K歌得高分教程大全

本专题整合了全民K歌得高分技巧汇总,阅读专题下面的文章了解更多详细内容。

3

2026.01.16

C++ 单元测试与代码质量保障
C++ 单元测试与代码质量保障

本专题系统讲解 C++ 在单元测试与代码质量保障方面的实战方法,包括测试驱动开发理念、Google Test/Google Mock 的使用、测试用例设计、边界条件验证、持续集成中的自动化测试流程,以及常见代码质量问题的发现与修复。通过工程化示例,帮助开发者建立 可测试、可维护、高质量的 C++ 项目体系。

10

2026.01.16

java数据库连接教程大全
java数据库连接教程大全

本专题整合了java数据库连接相关教程,阅读专题下面的文章了解更多详细内容。

33

2026.01.15

Java音频处理教程汇总
Java音频处理教程汇总

本专题整合了java音频处理教程大全,阅读专题下面的文章了解更多详细内容。

15

2026.01.15

windows查看wifi密码教程大全
windows查看wifi密码教程大全

本专题整合了windows查看wifi密码教程大全,阅读专题下面的文章了解更多详细内容。

42

2026.01.15

浏览器缓存清理方法汇总
浏览器缓存清理方法汇总

本专题整合了浏览器缓存清理教程汇总,阅读专题下面的文章了解更多详细内容。

7

2026.01.15

ps图片相关教程汇总
ps图片相关教程汇总

本专题整合了ps图片设置相关教程合集,阅读专题下面的文章了解更多详细内容。

9

2026.01.15

ppt一键生成相关合集
ppt一键生成相关合集

本专题整合了ppt一键生成相关教程汇总,阅读专题下面的的文章了解更多详细内容。

6

2026.01.15

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
最新Python教程 从入门到精通
最新Python教程 从入门到精通

共4课时 | 1.4万人学习

Django 教程
Django 教程

共28课时 | 3.1万人学习

SciPy 教程
SciPy 教程

共10课时 | 1.1万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号