CSV

CSV(逗号分隔值)格式是电子表格和数据库最常用的导入和导出格式。

该csv模块实现了以CSV格式读取和写入表格数据的类。它允许程序员说“以Excel首选格式编写此数据”或“从Excel生成的此文件中读取数据”,而不知道Excel使用的CSV格式的精确细节。程序员还可以描述其他应用程序理解的CSV格式或定义自己的专用CSV格式。

常用功能

# 读取csv文件
import csv
with open('a.csv', 'rb') as f:      # 采用b的方式处理可以省去很多问题reader = csv.reader(f)for row in reader:# do something with row, such as row[0], row[1]# 写入csv文件
import csv
with open('a.csv', 'wb') as f:        # 采用b的方式处理可以省去很多问题writer = csv.writer(f)writer.writerows(someiterable)

默认情况下,读和写使用逗号做分隔符(delimiter),用双引号作为引用符(quotechar),当遇到特殊情况是,可以根据需要手动指定字符,例如:

import csv
with open('a.csv', 'rb') as f:# 指定冒号作为分隔符,并且指定quote方式为不引用reader = csv.reader(f, delimiter=':', quoting=csv.QUOTE_NONE)for row in reader:print(row)

quoting的可选项有:
1、QUOTE_ALL
指示writer对象引用所有字段。

2、QUOTE_MINIMAL
指示writer对象只引用那些包含特殊字符,如字段分隔符,quotechar或任何字符 lineterminator。

3、QUOTE_NONNUMERIC
指示writer对象引用所有非数字字段。
指示读者将所有非引用字段转换为float类型。

4、QUOTE_NONE
指示writer对象永远不引用字段。当输出数据中出现当前 分隔符时,它前面是当前的escapechar 字符。如果未设置escapechar,则Error在遇到任何需要转义的字符时,编写器将引发。

指示reader不对引号字符执行任何特殊处理。

字典方式读写

参数格式如下:

class csv.DictReader(csvfile, fieldnames=None, restkey=None, restval=None, dialect='excel', *args, **kwds)class csv.DictWriter(csvfile, fieldnames, restval='', extrasaction='raise', dialect='excel', *args, **kwds)

fieldnames指定字典的key值,如果reader里没有指定即默认第一行元素,在writer里一定要指定这个

# 读
import csv
with open('a.csv') as f:reader = csv.DictReader(f)# 写
import csv
with open('a.csv', 'w') as f:fieldnames = ['key1', 'key2']writer = csv.DictWriter(f, fieldnames=fieldnames)writer.writeheader()writer.writerow({'key1': 'a', 'key2': 'b'})writer.writerow({'key1': 'c', 'key2': 'd'})

以上内容为csv模块的浅知识,可以作为了解来参考

官方资料

https://docs.python.org/3.6/library/csv.html

Python CSV模块相关推荐

  1. python csv 模块的使用

    python csv 模块的使用 歌曲推荐:攀登(live) csv 是用逗号分隔符来分隔列与列之间的. 1. csv的写入 1.简单的写入,一次写入一行 import csv with open(& ...

  2. Python csv模块的使用

    1.csv简介 CSV (Comma Separated Values),即逗号分隔值(也称字符分隔值,因为分隔符可以不是逗号),是一种常用的文本 格式,用以存储表格数据,包括数字或者字符.很多程序在 ...

  3. python csv模块 reader_Python的CSV模块

    Python 的 CSV模块的使用方法,包括,reader, writer, DictReader, DictWriter.register_dialect 一直非常喜欢python的csv模块,简单 ...

  4. python csv模块 reader_Python之csv模块

    简介 csv文件具有格式简单,快速存取,兼容性好等特点,工程.金融.商业等很多数据文件都是采用csv文件保存和处理.工作中数据处理也用到了csv,简要总结下使用经验,特别是那些由于本地兼容性导致的与官 ...

  5. python csv模块心得

    2019独角兽企业重金招聘Python工程师标准>>> with open('tiger.csv', 'wb') as csvfile:writer = csv.writer(csv ...

  6. python csv模块 一次读多行_python中csv模块读取reader只能读取一次

    各位好,请问python读取csv文件时只能读取一次是为什么 现在有一个csv文件 大概是这个样子 现在对ID和length进行读取 import csv with open('ccc.csv','r ...

  7. python csv模块追加列,使用Python在CSV上添加新列

    I have the following list of numbers: ['Number', 1,2,3,4] If I have the following CSV file: `Name` ` ...

  8. python csv模块用法_python使用csv模块如何将数据存放在一张表的不同行?

    def save2csv(file_name=None, header=None, data=None): """ 保存成CSV格式文件,方便Excel直接打开 :par ...

  9. python csv模块 防止重复写入标题

    #newline的作用是防止每次插入都有空行 with open("test.csv", "a+", newline='') as csvfile:writer ...

  10. csv java web 导入_DAY5-step9 使用CSV模块和Pandas在Python中读取和写入CSV文件

    什么是CSV文件? CSV文件是一种纯文本文件,其使用特定的结构来排列表格数据. CSV是一种紧凑,简单且通用的数据交换通用格式. 许多在线服务允许其用户将网站中的表格数据导出到CSV文件中. CSV ...

最新文章

  1. [WCF编程]1.WCF入门示例
  2. HTTP 2.0与OkHttp
  3. 简单的c语言课程设计管理类,C语言课程设计-学生成绩简单管理程序.doc
  4. Dealing with InterruptedException
  5. 2017年第八届蓝桥杯【C++省赛B组】
  6. 领域驱动设计,让程序员心中有码(三)
  7. 使用jdbc连接mysql数据库代码示例
  8. tomee_OpenLiberty:注入错误,适用于TomEE和Wildfly
  9. 每日一题(39)—— sizeof
  10. C语言爆炸干货,小白你还不来看看嘛!
  11. long类型20位示例_Java Long类numberOfTrailingZeros()方法及示例
  12. 汇顶科技【软件工程师】面经
  13. java对日开发好跳槽么_国内 Java 开发者必备的两个装备,你配置上了么?
  14. kudu建表:Not enough live tablet servers to create a table with the requested replication factor 3. 2
  15. php laravel 面试,当面试关问你Laravel Facade,说出这几个关键词就可以
  16. (2022.5.27)【Win10】Windows10重置后微软商店闪退打不开、图片闪退打不开、UWP应用闪退打不开——可能的解决方案
  17. 常用开发工具及常用DOS命令
  18. android 字符串中截取,【安卓按键精灵】几种字符串提取的方法(源码)
  19. 开源一个自动录制直播上传投稿的项目
  20. 图形化编程与python的区别_计算机编程启蒙为什么要选图形化编程和python

热门文章

  1. EXCEL使用技巧大全:输入的技巧
  2. 【原文翻译】深度残差收缩网络 Deep Residual Shrinkage Networks for Fault Diagnosis
  3. tp5模型belongsTo和hasOne以及hasMany的区别与用法
  4. ecshop4.0php,ECSHOP安装教程【ECSHOP4.0安装教程】图解ECSHOP4.0安装教程流程和步骤-ECSHOP教程网...
  5. 数列极限:重要极限 π 与 e
  6. 你需要一个什么样的网站开发流程?
  7. 【神经网络分类器】(三)深度学习发展史——从深度信念网络到AlexNet
  8. VTM代码学习(1)CU划分
  9. Java银行账户管理子系统
  10. layui导入模板数据_使用layui模板填充页面数据