在数据分析、自动化办公和Web开发中,经常需要处理CSV(Comma-Separated Values)格式的文件。Python内置的csv模块提供了强大而简洁的工具来读写CSV文件。本教程将从零开始,手把手教你使用csv模块,即使你是编程小白也能轻松上手!
CSV是一种纯文本格式,用于存储表格数据。每一行代表一条记录,字段之间用逗号(或其他分隔符)分隔。例如:
姓名,年龄,城市张三,25,北京李四,30,上海王五,22,广州 使用前,只需一行代码导入模块:
import csv 假设我们有一个名为users.csv的文件,内容如上所示。我们可以这样读取它:
import csv# 打开CSV文件with open('users.csv', 'r', encoding='utf-8') as file: reader = csv.reader(file) # 遍历每一行 for row in reader: print(row) 输出结果将是:
['姓名', '年龄', '城市']['张三', '25', '北京']['李四', '30', '上海']['王五', '22', '广州'] 要创建或写入一个新的CSV文件,可以使用csv.writer:
import csvdata = [ ['姓名', '年龄', '城市'], ['赵六', '28', '深圳'], ['孙七', '35', '杭州']]with open('new_users.csv', 'w', newline='', encoding='utf-8') as file: writer = csv.writer(file) writer.writerows(data) 注意:newline=''参数是为了避免在Windows系统中写入多余的空行。
当CSV文件有标题行时,使用csv.DictReader和csv.DictWriter会更方便,因为它们将每行数据映射为字典:
# 读取with open('users.csv', 'r', encoding='utf-8') as file: reader = csv.DictReader(file) for row in reader: print(f"{row['姓名']} 来自 {row['城市']},今年 {row['年龄']} 岁")# 写入fieldnames = ['姓名', '年龄', '城市']new_data = [ {'姓名': '周八', '年龄': '27', '城市': '成都'}, {'姓名': '吴九', '年龄': '31', '城市': '西安'}]with open('more_users.csv', 'w', newline='', encoding='utf-8') as file: writer = csv.DictWriter(file, fieldnames=fieldnames) writer.writeheader() # 写入标题行 writer.writerows(new_data) encoding='utf-8'打开文件。delimiter参数指定,如csv.reader(file, delimiter='\t')处理TSV文件。csv模块会自动处理包含逗号或换行符的字段(通常用双引号包裹)。通过本教程,你已经掌握了Python csv模块的基本用法,包括使用csv.reader和csv.writer进行基础读写,以及使用DictReader和DictWriter处理结构化数据。这些技能是Python数据处理的重要基础,也是自动化处理CSV文件读写任务的关键。
无论你是初学者还是有一定经验的开发者,熟练运用Python csv模块都能极大提升工作效率。快去试试吧!
本文由主机测评网于2025-12-06发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://www.vpshk.cn/2025123798.html