迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Python >

在 Python 中将 JSON 转为 CSV

作者:迹忆客 最近更新:2023/12/17 浏览次数:

JSON 是 JavaScript Object Notation 的缩写,它基于 JavaScript 中对象的格式,是一种表示结构化数据的编码技术。它基于 JavaScript 中的对象格式,是一种表示结构化数据的编码技术。它现在被广泛使用,特别是用于服务器和网络应用之间的数据共享。

CSV 文件用于存储 Excel 电子表格等表格格式的数据。

在本教程中,我们将学习如何将 JSON 数据转换为 CSV 文件。


在 Python 中使用 Pandas DataFrames to_csv() 方法把 JSON 转换为 CSV

在这个方法中,我们将首先把 JSON 转换为 Pandas DataFrame,然后使用 to_csv() 方法把它转换为 CSV 文件。我们可以使用 Python 中的 json 库提供的 json.loads() 函数来读取 JSON 字符串,将 JSON 转换为 DataFrame。然后我们将这个 JSON 对象传递给 json_normalize() 函数,它将返回一个包含所需数据的 Pandas DataFrame。

下面的代码片段将解释我们是如何做的。

import pandas as pd
import json

data = """
{
"Results":
         [
         { "id": "1", "Name": "Jay" },
         { "id": "2", "Name": "Mark" },
         { "id": "3", "Name": "Jack" }
         ],
"status": ["ok"]
}
"""

info = json.loads(data)

df = pd.json_normalize(info["Results"])

df.to_csv("samplecsv.csv")

创建的 CSV 文件的内容如下。

,id,Name
0,1,Jay
1,2,Mark
2,3,Jack

使用 csv 模块将 JSON 转换为 CSV 文件

在这个方法中,我们将使用 Python 中的 csv 库,它是用来读写 CSV 文件的。首先,我们将像上一个方法一样读取 JSON 数据。我们以写模式打开一个文件,并使用 csv 模块中的 DictWriter() 来创建一个对象,使我们能够将 JSON 数据映射并写入文件。fieldnames 是键,当我们使用 writerows() 函数写行时,这些键被识别并与数据匹配。

下面的代码片段将展示我们如何实现上述方法。

import csv
import json

data = """
{
"Results":
         [
         { "id": "1", "Name": "Jay" },
         { "id": "2", "Name": "Mark" },
         { "id": "3", "Name": "Jack" }
         ],
"status": ["ok"]
}
"""

info = json.loads(data)["Results"]

print(info[0].keys())

with open("samplecsv.csv", "w") as f:
    wr = csv.DictWriter(f, fieldnames=info[0].keys())
    wr.writeheader()
    wr.writerows(info)

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

Python 中的平滑数据

发布时间:2023/12/20 浏览次数:101 分类:Python

本教程演示了如何在 Python 中平滑图形中的曲线。Python 在数据分析和可视化方面有着广泛的应用。

Python 中捕获键盘中断错误

发布时间:2023/12/20 浏览次数:187 分类:Python

本教程讨论如何在 Python 中捕获 KeyboardInterrupt。当用户使用 Ctrl + C 或 Ctrl + Z 手动尝试停止正在运行的程序时,或在 Jupyter Notebook 的情况下通过中断内核

在 Python 中实现低通滤波器

发布时间:2023/12/20 浏览次数:101 分类:Python

本教程讨论如何在 python 中创建低通滤波器。低通滤波器是信号处理基础中的一个术语,经常用于过滤信号以获得更准确的结果。

在 Python 中解析日志文件

发布时间:2023/12/20 浏览次数:180 分类:Python

了解如何在 Python 中解析日志文件。日志文件包含有关在软件系统或应用程序运行期间发生的事件的信息。这些事件包括错误、用户提出的请求、Bug 等。

在 Python 中声明一个没有值的变量

发布时间:2023/12/20 浏览次数:94 分类:Python

在本教程中,我们将讨论如何在 Python 中声明一个变量而不赋值。变量是保留的内存位置,可以存储一些值。换句话说,Python 程序中的变量将数据提供给计算机以处理操作。

在 Python 中定义类全局变量

发布时间:2023/12/20 浏览次数:77 分类:Python

本教程演示了如何定义类全局变量。全局变量是一个可见变量,可以在程序的每个部分使用。全局变量也不在任何函数或方法中定义。

在 Python 中的 Lambda 函数中传递多个参数

发布时间:2023/12/20 浏览次数:133 分类:Python

了解如何在 Python 中的 Lambda 函数中传递多个参数。lambda 形式或 lambda 表达式是 Python 中的匿名函数。它们是可以使用 Python 中保留的 lambda 关键字创建的内联函数。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便