You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Python读取文件夹内同名成对的CSV与JSON文件

问题描述

文件夹内文件结构如下:

abc.csv
abc.json
bcd.csv
bcd.json
efg.csv
efg.json

以此类推,存在多组成对的同名CSV与JSON文件。需要读取每一对同名文件,执行相同操作后再处理下一对文件,设想的伪代码如下:

for files in folder_name:
    df_csv=pd.read_csv('abc.csv')
    df_json=pd.read_json('abc.json')
    # some script to execute
    #now read the next pair and repeat for all files
实现方案

可以按以下步骤实现:

  • 获取文件夹内所有文件名:用os.listdir()或者pathlib模块遍历目标文件夹,拿到所有文件的名称。
  • 提取唯一的文件前缀:把每个文件名的后缀去掉,得到前缀(比如abc.csv变成abc),然后去重,这样就得到所有成对文件的共同名称。
  • 遍历每个前缀,读取对应文件并处理:对每个前缀,拼接出对应的.csv和.json路径,分别读取后执行你的业务逻辑。

示例代码(os模块版)

import os
import pandas as pd

# 替换为你的目标文件夹路径
folder_path = "./your_target_folder"

# 获取文件夹内所有文件
all_files = os.listdir(folder_path)

# 提取所有唯一的文件前缀
file_prefixes = set()
for file in all_files:
    prefix, _ = os.path.splitext(file)
    file_prefixes.add(prefix)

# 遍历处理每一对文件
for prefix in file_prefixes:
    csv_path = os.path.join(folder_path, f"{prefix}.csv")
    json_path = os.path.join(folder_path, f"{prefix}.json")
    
    # 检查文件对是否完整,避免缺失某一个文件
    if os.path.exists(csv_path) and os.path.exists(json_path):
        df_csv = pd.read_csv(csv_path)
        df_json = pd.read_json(json_path)
        
        # 这里写入你的处理逻辑
        print(f"正在处理 {prefix} 对应的文件对")
        # your script here
    else:
        print(f"警告:{prefix} 的文件对不完整,跳过处理")

示例代码(pathlib模块版,Python3.4+)

from pathlib import Path
import pandas as pd

# 替换为你的目标文件夹路径
folder_path = Path("./your_target_folder")

# 提取所有唯一的文件前缀
file_prefixes = {file.stem for file in folder_path.iterdir() if file.is_file()}

# 遍历处理每一对文件
for prefix in file_prefixes:
    csv_file = folder_path / f"{prefix}.csv"
    json_file = folder_path / f"{prefix}.json"
    
    if csv_file.exists() and json_file.exists():
        df_csv = pd.read_csv(csv_file)
        df_json = pd.read_json(json_file)
        
        # 这里写入你的处理逻辑
        print(f"处理 {prefix} 文件对中...")
        # your script here
    else:
        print(f"{prefix} 文件对缺失,跳过处理")

内容的提问来源于stack exchange,提问作者dsnoob27

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 12:45:48