在Python中,可以使用内置的`csv`模块来操作CSV文件,以下是基本的读取和写入方法:
读取CSV文件
python
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文件
python
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`
python
import csv
from 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())
自定义分隔符和引用符
python
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)
处理包含逗号、换行符的数据
python
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文件的基本方法。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://sigusoft.com/bj/41465.html