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

 更新时间:2022年09月26日 15:33:37   作者: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()方法内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 面向对象学习之pygame坦克大战

    面向对象学习之pygame坦克大战

    这篇文章主要为大家详细介绍了面向对象学习之pygame坦克大战,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-09-09
  • Python如何生成指定区间中的随机数

    Python如何生成指定区间中的随机数

    这篇文章主要介绍了Python如何生成指定区间中的随机数,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-07-07
  • python批量识别图片指定区域文字内容

    python批量识别图片指定区域文字内容

    这篇文章主要为大家详细介绍了python识别图片指定区域文字内容,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-04-04
  • 发工资啦!教你用Python实现邮箱自动群发工资条

    发工资啦!教你用Python实现邮箱自动群发工资条

    这篇文章主要介绍了发工资啦!教你用Python实现邮箱自动群发工资条,文中有非常详细的代码示例,对正在学习python的小伙伴们有很好地帮助,需要的朋友可以参考下
    2021-05-05
  • Matplotlib实战之直方图绘制详解

    Matplotlib实战之直方图绘制详解

    直方图,又称质量分布图,用于表示数据的分布情况,是一种常见的统计图表,这篇文章主要为大家详细介绍了如何使用Matplotlib绘制直方图,需要的可以参考下
    2023-08-08
  • python编程使用协程并发的优缺点

    python编程使用协程并发的优缺点

    协程是一种用户态的轻量级线程,又称微线程。这篇文章主要介绍了python编程使用协程并发的优缺点,感兴趣的朋友跟随小编一起看看吧
    2018-09-09
  • 使用 Supervisor 监控 Python3 进程方式

    使用 Supervisor 监控 Python3 进程方式

    今天小编就为大家分享一篇使用 Supervisor 监控 Python3 进程方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-12-12
  • Python数据结构与算法之算法分析详解

    Python数据结构与算法之算法分析详解

    算法分析的主要目标是从运行时间和内存空间消耗等方面比较算法。本文将为大家详细介绍Python数据结构与算法中的算法分析,需要的可以参考一下
    2021-12-12
  • python教程之生成器和匿名函数

    python教程之生成器和匿名函数

    这篇文章主要为大家介绍了python生成器和匿名函数,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-01-01
  • Python知识之列表的十个小技巧分享

    Python知识之列表的十个小技巧分享

    这篇文章主要介绍了Python知识之列表的十个小技巧分享,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-01-01

最新评论