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']}")
相关推荐
数研小生4 小时前
1688商品列表API:高效触达批发电商海量商品数据的技术方案
大数据·python·算法·信息可视化·json
devmoon6 小时前
快速了解兼容 Ethereum 的 JSON-RPC 接口
开发语言·网络·rpc·json·区块链·智能合约·polkadot
九转成圣7 小时前
告别肉眼解析!Java 递归实现 JSON 全路径自动化探测工具
java·自动化·json
JQLvopkk8 小时前
C# 实现Http Json格式 Post 、Get 方法请求 winform服务器
http·c#·json
小高Baby@1 天前
JSON、bind、form
数据结构·json
阿蒙Amon1 天前
TypeScript学习-第11章:配置文件(tsconfig.json)
学习·typescript·json
一起养小猫1 天前
Flutter for OpenHarmony 进阶:Timer组件与倒计时系统深度解析
android·网络·笔记·flutter·json·harmonyos
女王大人万岁1 天前
Go语言JSON标准库(encoding/json):功能解析与实战指南
服务器·开发语言·后端·golang·json
每天要多喝水2 天前
nlohmann/json 的使用
c++·json