在Python中,可以使用内置的`csv`模块来操作CSV文件,以下是基本的读取和写入方法:
读取CSV文件
import csv打开CSV文件with open('data.csv', 'r', encoding='utf-8') as f:创建csv.reader对象csv_reader = csv.reader(f)读取文件内容for row in csv_reader:print(row)
写入CSV文件
import csv数据准备data = [('Name', 'Age', 'City'),('Alice', '30', 'New York'),('Bob', '25', 'Los Angeles')]打开文件并创建csv.writer对象with open('output.csv', 'w', newline='', encoding='utf-8') as f:csv_writer = csv.writer(f)写入数据csv_writer.writerows(data)
高级用法
使用`csv.DictReader`和`csv.DictWriter`
import csvfrom collections import namedtuple定义数据结构Person = namedtuple('Person', ['Name', 'Age', 'City'])读取CSV文件with open('data.csv', 'r', encoding='utf-8') as f:csv_reader = csv.DictReader(f)for row in csv_reader:person = Person(row)print(person)写入CSV文件data = [Person('Alice', '30', 'New York'),Person('Bob', '25', 'Los Angeles')]with open('output.csv', 'w', newline='', encoding='utf-8') as f:fieldnames = ['Name', 'Age', 'City']csv_writer = csv.DictWriter(f, fieldnames=fieldnames)csv_writer.writeheader()for row in data:csv_writer.writerow(row._asdict())
自定义分隔符和引用符
import csv使用自定义分隔符和引用符with open('data.csv', 'r', encoding='utf-8', delimiter='|', quotechar='"') as f:csv_reader = csv.reader(f)for row in csv_reader:print(row)
处理包含逗号、换行符的数据
import csv写入包含逗号的数据data = [('Name, Age', 'New York, NY'),('Bob', '25')]with open('output.csv', 'w', newline='', encoding='utf-8') as f:csv_writer = csv.writer(f)for row in data:csv_writer.writerow(row)
以上是使用Python操作CSV文件的基本方法。

