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

如何用Python CSV模块将列表值写入CSV文件指定列

用Python脚本更新CSV指定列的值

可以通过Python内置的csv模块轻松实现这个需求,以下是具体方案:

方法一:生成新的CSV文件(推荐,避免误改原文件)

import csv

# 修正后的新颜色列表(字符串需加引号)
new_colour = ["pink", "yellow", "black"]

# 读取原CSV并更新数据
updated_rows = []
with open("your_file.csv", "r") as file:
    # 按列名读取CSV,方便定位目标列
    reader = csv.DictReader(file)
    # 遍历每行数据和对应的新颜色
    for row, colour in zip(reader, new_colour):
        # 替换colum3列的值(注意列名拼写和原文件一致)
        row["colum3"] = colour
        updated_rows.append(row)

# 将更新后的数据写入新文件
with open("updated_file.csv", "w", newline="") as file:
    writer = csv.DictWriter(file, fieldnames=reader.fieldnames)
    writer.writeheader()  # 写入表头
    writer.writerows(updated_rows)  # 写入所有更新后的行

方法二:直接修改原文件

如果需要直接覆盖原文件,可以先把内容读到内存,再写回去:

import csv

new_colour = ["pink", "yellow", "black"]

# 读取原文件内容到内存
rows = []
with open("your_file.csv", "r") as file:
    reader = csv.DictReader(file)
    fieldnames = reader.fieldnames
    for row, colour in zip(reader, new_colour):
        row["colum3"] = colour
        rows.append(row)

# 写回原文件
with open("your_file.csv", "w", newline="") as file:
    writer = csv.DictWriter(file, fieldnames=fieldnames)
    writer.writeheader()
    writer.writerows(rows)

注意事项

  • 确保原CSV的目标列名是colum3(注意少了一个字母n),脚本中的列名必须和原文件完全匹配。
  • 新颜色列表的长度要和CSV的数据行数(不含表头)一致,否则zip会自动截断到较短的列表长度。
  • 写入CSV时指定newline="",可以避免Windows系统下生成多余空行。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 12:45:41