📅  最后修改于: 2023-12-03 15:14:23.745000             🧑  作者: Mango
CSV(Comma Separated Values)即逗号分隔值文件,是一种常见的数据存储格式。Python有一个内置的csv模块,可以方便地对CSV文件进行读写操作。本文将介绍如何使用Python中的csv模块进行CSV文件的读写操作。
读取CSV文件需要使用csv模块中的reader()函数。reader()函数返回一个可以迭代的对象,每次迭代都会返回一个由CSV文件中一行数据组成的列表。以下是一个简单的例子:
import csv
with open('data.csv') as csv_file:
csv_reader = csv.reader(csv_file)
for row in csv_reader:
print(row)
以上代码会打印出CSV文件中每一行的内容。
需要注意的是,当CSV文件中存在字符串包含逗号时,reader()函数默认会将该字符串拆分成多个列表元素。如果要避免这种情况,可以将该字符串用引号括起来。
写入CSV文件需要使用csv模块中的writer()函数。writer()函数接收一个可写的文件对象,并返回一个CSV写入器对象。可以使用CSV写入器对象中的writerow()函数向CSV文件中写入一行数据。以下是一个简单的例子:
import csv
data = [['name', 'age'], ['Alice', 25], ['Bob', 30], ['Charlie', 35]]
with open('data.csv', mode='w', newline='') as csv_file:
csv_writer = csv.writer(csv_file)
for row in data:
csv_writer.writerow(row)
以上代码将一个二维列表写入CSV文件中。
需要注意的是,当CSV文件中存在字符串包含引号、逗号或换行符时,需要将该字符串用双引号括起来,并在双引号前加一个引号。例如,下面的数据:
data = [['name', 'description'], ['Alice', 'She said "hello"'], ['Bob', 'He said, "I like it!"']]
写入CSV文件中后的格式为:
name,description
Alice,"She said ""hello"""
Bob,"He said, ""I like it!"""
以上只是CSV操作的基本用法,csv模块还提供了许多其他函数和选项,例如:
有关这些更高级的用法,可以参考Python文档进行学习。