如何用Python在CSV文件指定单元格开头添加字符?
使用Python在CSV指定单元格开头插入字符
方法1:用内置csv模块(无需额外依赖)
直接用Python自带的csv模块就能完成,步骤很清晰:
- 读取原CSV的每一行数据
- 定位到第3个单元格(注意Python索引从0开始,所以对应索引
2) - 在该单元格内容前拼接你要加的字符
- 将修改后的行写入新CSV文件
示例代码:
import csv # 自定义参数 input_csv = "你的输入文件.csv" output_csv = "修改后的文件.csv" add_prefix = "HAL" target_col = 2 # 第3列的索引(从0开始计数) # 读写文件 with open(input_csv, 'r', newline='', encoding='utf-8') as in_file, \ open(output_csv, 'w', newline='', encoding='utf-8') as out_file: reader = csv.reader(in_file) writer = csv.writer(out_file) for row in reader: # 避免列数不足导致索引报错 if len(row) > target_col: row[target_col] = add_prefix + row[target_col] writer.writerow(row) print(f"修改完成,结果已保存到 {output_csv}")
方法2:用pandas(适合大文件)
如果处理的是大型CSV,pandas的效率会更高,先安装依赖:
pip install pandas
示例代码:
import pandas as pd input_csv = "你的输入文件.csv" output_csv = "修改后的文件.csv" add_prefix = "HAL" target_col = 2 # 第3列的索引,也可以直接写列名比如"列名称" df = pd.read_csv(input_csv) # 把目标列的内容转为字符串后拼接前缀 df.iloc[:, target_col] = add_prefix + df.iloc[:, target_col].astype(str) # 写入新文件,不保留索引列 df.to_csv(output_csv, index=False, encoding='utf-8') print(f"修改完成,结果已保存到 {output_csv}")
注意点
- 索引计数:不管用哪种方法,Python里的列索引都是从0开始,第3列对应索引
2 - 表头处理:两种方法都会自动保留原CSV的表头,不会修改表头单元格
- 编码问题:指定
encoding='utf-8'可以避免中文乱码问题
内容的提问来源于stack exchange,提问作者Paul M
相关产品推荐
相关产品推荐

