CVS文件转Json格式

需求

读取CSV文件,将数据组合成新的JSON格式输出打印

如果出现不足5列的,空的既跳过

测试用例

bash 复制代码
import csv

def process_csv_file(filename):
    """
    处理CSV文件,获取C列(domain)和E列(valid)的值
    注意:CSV列索引从0开始,C列是第3列(索引2),E列是第5列(索引4)
    """
    results = []
    
    with open(filename, 'r', encoding='utf-8') as file:
        # 创建CSV阅读器
        csv_reader = csv.reader(file)
        
        # 跳过表头(如果有)
        headers = next(csv_reader, None)
        print(f"CSV表头: {headers}")
        
        # 处理每一行
        for row_num, row in enumerate(csv_reader, start=2):  # 行号从2开始(跳过表头)
            if len(row) >= 5:  # 确保行至少有5列
                domain = row[2]  # C列,索引2
                valid = row[4]   # E列,索引4
                
                results.append({
                    'row': row_num,
                    'domain': domain,
                    'valid': valid
                })
            else:
                print(f"警告: 第{row_num}行列数不足,跳过")
    
    return results


if __name__ == '__main__':
    # 使用示例
    results = process_csv_file('risk_mail_domain_verify_record_202602041439.csv')
    for result in results:
        print(f"行 {result['row']}: domain={result['domain']}, valid={result['valid']}")
相关推荐
维天说18 小时前
CLI-Switch 2026年3月版历史设计:Hook、TTY 隔离与 JSON 状态
java·服务器·json
一颗小行星-2 天前
为什么有的JSON可以带注释?
json
CedarQR3 天前
万字长文:从零在 RK3588 上部署 PaddleSpeech 中文 TTS 全流程(FastSpeech2 + HiFiGAN)
开发语言·c++·嵌入式硬件·ubuntu·json
Geoking.4 天前
JSON vs JSONL:从数据格式到 AI Agent 的工程实践
人工智能·深度学习·json
ID_180079054734 天前
京东商品详情API能力解析与标准化应用方案(含JSON返回示例)
json
灯澜忆梦5 天前
Go 语言 _JSON---序列化与反序列化
开发语言·golang·json
梦幻通灵6 天前
Notepad++格式化Json两种方案【持续更新】
android·json·notepad++
解局易否结局6 天前
鸿蒙原生开发实战|Native JSON 编解码与高性能数据序列化
华为·json·harmonyos
代码的小搬运工6 天前
网络请求(NSURL、NSURLRequest、NSURLSessionDataTask、协议回调与 JSON 数据的基本流向)
网络·数据库·json
2601_960906727 天前
网络防御等最先进AI模型领域
人工智能·json·hbase·flume·storm