python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > Python csv.writer() csv.DictWriter()方法

Python操作csv文件之csv.writer()和csv.DictWriter()方法的基本使用

作者:booze-J

csv文件是一种逗号分隔的纯文本形式存储的表格数据,Python内置了CSV模块,可直接通过该模块实现csv文件的读写操作,下面这篇文章主要给大家介绍了关于Python操作csv文件之csv.writer()和csv.DictWriter()方法的基本使用,需要的朋友可以参考下

一、csv.writer()方法的基本使用

示例代码1:

import csv
data = [
    (1,"cat",18),
    (2,"dog",17),
    (3,"tigger",16),
]
f = open('test.csv','a',encoding='utf8',newline='')
writer = csv.writer(f)  # csv.writer()中可以传一个文件对象
for line in data: # 该data既可以是列表嵌套列表的数据类型也可以是列表嵌套元组的数据类型
    writer.writerow(line)

writer()的功能是创建一个常规Writer的对象,但是调用writer()的writerow/writerows方法是要传入的是列表类型数据。

注意示例代码1中打开文件时f = open('test.csv','a',encoding='utf8',newline='')指定newline=‘’参数可以使每次写入数据不会产生空行,注意根据需求指定文件的打开方式,该案例中是使用追加的方式打开文件,这样写入数据的时候,就不会产生是数据的覆盖。

代码成功运行在test.csv中产生的结果为:

运行结果

二、csv.DictWriter()方法的基本使用

示例代码2:

import csv
data = [
    {'id':1,'name':'dog',"age":18},
    {'id':2,'name':'cat',"age":19},
    {'id':3,'name':'dog',"age":20},
]
f = open('test1.csv','a',encoding='utf8',newline='')  # 指定newline=‘'参数
writer = csv.DictWriter(f,fieldnames=['id','name','age'])
writer.writeheader() # 将字段写入csv格式文件首行
for line in data:
    writer.writerow(line)

DictWriter()的功能是创建一个类似于常规Writer的对象,但是调用DictWriter()的writerow/writerows方法是要传入的是字典类型数据。

示例代码2中的writer.writeheader()作用是将字段写入,即将DictWriter构造方法的fieldnames参数中的字段写入csv格式文件的首行,

如果未执行writeheader()方法的话是不会将fieldnames中的字段写入csv格式文件的首行。

代码成功运行在test1.csv中产生的结果为:

运行结果

总结 

到此这篇关于Python操作csv文件之csv.writer()和csv.DictWriter()方法基本使用的文章就介绍到这了,更多相关Python csv.writer() csv.DictWriter()方法内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文