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

如何使用Python向CSV文件新增列并填入列表中的对应值

Python实现CSV新增列并填入列表值的方案

下面提供两种常用实现方式,可根据你的场景选择:


方法1:使用pandas库(代码最简洁,推荐)

需要先安装pandas依赖:pip install pandas
操作逻辑为读取CSV到DataFrame对象后直接赋值新列,再写回文件即可,示例代码:

import pandas as pd

# 读取原始CSV文件
df = pd.read_csv("你的原始文件路径.csv")

# 准备要填入新列的列表,*请确保列表长度和CSV的行数(不含表头)完全一致*
new_column_data = ["值1", "值2", "值3", "..."]

# 新增列,可自定义列名,示例为new_col
df["new_col"] = new_column_data

# 写入新文件,index=False表示不导出pandas自动生成的行索引
df.to_csv("修改后的文件路径.csv", index=False, encoding="utf-8-sig")

提示:如果需要直接覆盖原文件,把输出路径改为原始文件路径即可,操作前建议备份原文件避免数据丢失。


方法2:使用标准库csv(无需安装第三方依赖)

适合环境不允许安装额外包的场景,直接调用Python自带的csv模块处理,示例代码:

import csv

# 基础配置
input_file = "原始文件路径.csv"
output_file = "修改后的文件路径.csv"
new_col_name = "new_col" # 自定义新列名
new_column_data = ["值1", "值2", "值3", "..."] # 待填入的列表

with open(input_file, "r", encoding="utf-8") as f_in, open(output_file, "w", encoding="utf-8-sig", newline="") as f_out:
    reader = csv.reader(f_in)
    writer = csv.writer(f_out)
    
    # 处理表头:追加新列名后写入
    header = next(reader)
    header.append(new_col_name)
    writer.writerow(header)
    
    # 逐行处理,对应插入列表的值
    for index, row in enumerate(reader):
        row.append(new_column_data[index])
        writer.writerow(row)

注意事项

  • 两种方法都要求待填充的列表长度和CSV除表头外的行数完全匹配,否则会出现数据错位或者报错
  • 如果你的CSV是特殊分隔符(比如制表符分隔),可以在读取时加sep="\t"参数指定分隔符

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 11:39:05