Python中的csv模块提供了大量的函数和工具方便我们读写CSV文件。其中,writer函数用来将数据写入CSV文件,下面是writer函数的详细攻略:
函数定义
csv.writer(csvfile, dialect='excel', **fmtparams)
- csvfile:文件对象,需要使用写入模式打开。如果是包含中文的文件路径,需要使用
open()
函数指定编码方式。 - dialect:编码方式,默认为excel。
-
fmtparams:格式化参数,包括以下属性:
-
delimiter:指定字段分隔符,默认为逗号。
- quotechar:指定字段要用的引号,默认为双引号。
- quoting: 引号的使用,默认为QUOTE_MINIMAL。
- lineterminator: 指定每行的结束字符,默认为’\r\n’。
- encoding: 指定编码,默认为’utf-8’。
使用方法
- 创建writer对象
使用csv.writer()函数创建一个 writer 对象,将打开的 CSV 文件作为参数传递给它。
import csv
with open('examples.csv', 'w', newline='', encoding='utf-8') as csvfile:
writer = csv.writer(csvfile)
- 写入数据
将数据列表写入CSV文件。这里使用writer对象的writerow()
方法写入一行数据。
import csv
with open('examples.csv', 'w', newline='', encoding='utf-8') as csvfile:
writer = csv.writer(csvfile)
writer.writerow(['姓名', '年龄', '性别'])
writer.writerow(['张三', '23', '男'])
writer.writerow(['李四', '24', '男'])
在代码示例中我们首先打开文件,然后创建writer对象。接着使用writerow()
方法依次写入了一个表头和两行数据。
- 修改分隔符和引号
有时候CSV文件中的数据分隔符和引号并不一定都是逗号和双引号,这时我们可以使用dialect='excel-tab'
来改变分隔符,使用quotechar='|'
来改变引号。
import csv
with open('examples.csv', 'w', newline='', encoding='utf-8') as csvfile:
writer = csv.writer(csvfile, dialect='excel-tab', quotechar='|')
writer.writerow(['姓名', '年龄', '性别'])
writer.writerow(['张三', '23', '男'])
writer.writerow(['李四', '24', '男'])
在代码示例中我们使用dialect='excel-tab'
来改变分隔符为制表符,使用quotechar='|'
来改变引号为竖杠(|)。
以上就是CSV模块中writer函数的完整攻略。