使用 Python 读取文件夹内的 JSON 文件

在这个教程中,我们将学习如何使用 Python 读取一个文件夹内的所有 JSON 文件。创建这个过程的关键步骤如下所示:

流程步骤

步骤 描述
1 导入必需的模块
2 获取文件夹内的文件列表
3 过滤出 JSON 文件
4 逐个打开并读取 JSON 文件
5 处理 JSON 数据

下面我们将详细讲解每一步需要做的事情,以及相应的代码。

步骤详解

1. 导入必需的模块

首先,我们需要导入处理文件和 JSON 数据所需的模块:

import os  # 用于操作系统相关功能,如文件和文件夹
import json  # 用于处理 JSON 数据

说明os模块提供了一个可用于与操作系统交互的方式,而json模块用于解析和生成 JSON 数据。

2. 获取文件夹内的文件列表

接下来,我们需要获取指定文件夹内的所有文件列表。我们可以使用 os.listdir() 函数来实现这一点。

folder_path = 'path/to/your/folder'  # 替换为你的文件夹路径
files = os.listdir(folder_path)  # 获取文件夹内的所有文件列表

说明os.listdir(folder_path) 会返回一个列表,包含文件夹内的所有文件名。

3. 过滤出 JSON 文件

我们只需关注以 .json 结尾的文件,因此我们需要对文件列表进行过滤。

json_files = [file for file in files if file.endswith('.json')]  # 筛选出所有 JSON 文件

说明:这里我们使用列表推导式(List Comprehension)来过滤出后缀为 .json 的文件。

4. 逐个打开并读取 JSON 文件

过滤后,我们需要逐个打开这些 JSON 文件并读取其内容。

data_list = []  # 用于存储读取到的数据
for json_file in json_files:
    file_path = os.path.join(folder_path, json_file)  # 构建完整文件路径
    with open(file_path, 'r', encoding='utf-8') as file:  # 打开 JSON 文件
        data = json.load(file)  # 读取 JSON 数据
        data_list.append(data)  # 将读取的数据添加到列表中

说明

  • os.path.join(folder_path, json_file) 用于拼接成完整路径。
  • with open(...) 语句用于自动处理文件打开和关闭。
  • json.load(file) 将文件内容解析为 Python 对象。

5. 处理 JSON 数据

现在,我们已经读取到了所有 JSON 文件的数据,接下来可以根据具体需求对这些数据进行处理或分析。

# 示例:简单打印每个 JSON 数据
for data in data_list:
    print(data)  # 打印 JSON 数据

说明:在这里,我们简单地将读取到的 JSON 数据打印到控制台,实际应用中可能需要更复杂的处理。

完整代码示例

将以上所有步骤整合在一起,我们的完整代码如下:

import os  # 导入 os 模块
import json  # 导入 json 模块

folder_path = 'path/to/your/folder'  # 指定文件夹路径
files = os.listdir(folder_path)  # 获取文件夹内的文件列表
json_files = [file for file in files if file.endswith('.json')]  # 筛选出 JSON 文件

data_list = []  # 初始化数据列表
for json_file in json_files:
    file_path = os.path.join(folder_path, json_file)  # 获取完整文件路径
    with open(file_path, 'r', encoding='utf-8') as file:  # 打开文件
        data = json.load(file)  # 读取 JSON 数据
        data_list.append(data)  # 添加到数据列表

# 输出读取到的 JSON 数据
for data in data_list:
    print(data)  # 打印每个 JSON 数据

序列图

以下的序列图展示了程序的执行流程,帮助你理解各个步骤之间的关系。

sequenceDiagram
    participant 用户
    participant Python程序
    participant 文件系统
    用户->>Python程序: 启动程序
    Python程序->>文件系统: 获取文件夹文件列表
    文件系统-->>Python程序: 返回文件列表
    Python程序->>Python程序: 过滤 JSON 文件
    Python程序->>文件系统: 打开每个 JSON 文件
    文件系统-->>Python程序: 返回 JSON 文件内容
    Python程序->>Python程序: 解析并存储数据
    Python程序->>用户: 输出 JSON 数据

结尾

通过以上步骤,你已经学会了如何使用 Python 阅读文件夹内的 JSON 文件。掌握这个技能将帮助你在数据处理和项目开发中更加游刃有余。接下来,你可以尝试对读取到的数据进行更复杂的处理,进一步提升自己的编程能力。不断练习与探索,将是成为优秀开发者的关键!