文章目录

  • 前言
  • 一、CSV简介
    • 1.1 什么是CSV?
    • 1.2 为什么要使用CSV?
    • 1.3 使用Excel生成CSV文件
  • 二、Python CSV常用方法
  • 三、用Python来操作CSV文件
    • 1.引入库
    • 2.读入数据(使用csv.reader)
    • 3.写入数据(使用csv.writer)
    • 4. CSV自定义方言(dialect)
  • 总结

前言

CSV是数据处理中经常会用到的一种文件格式。本文将对CSV进行简要的介绍,并使用Python来对CSV文件进行读写操作。


提示:以下是本篇文章正文内容,下面案例可供参考

一、CSV简介

1.1 什么是CSV?

CSV文件,即逗号分隔值文件(Comma Separated Values file)。它是一种纯文本文件,使用特定的结构来排列表格数据。

CSV文件通常使用逗号来分割每个特定数据值(也可用’:::’,’;;;'等),具体的文件结构如下:

列名 1 列名 2 列名 3
数据值(1,1) 数据值(1,2) 数据值(1,3)
数据值(2,1) 数据值(2,2) 数据值(2,3)
数据值(3,1) 数据值(3,2) 数据值(3,3)

1.2 为什么要使用CSV?

纯文本文件格式有TXT,JSON等。只要使用TXT文件格式就能进行文件的读写,那么为什么还要使用CSV呢?

原因:CSV文件可以和Excel进行转换。当前很多公司的报表使用Excel来生成,因此将数据写入CSV文件能更方便的使用Excel来进行读取。

1.3 使用Excel生成CSV文件

在Excel中点击文件>另存为,将文件类型选择为CSV(逗号分隔)(*.csv)

二、Python CSV常用方法

方法 描述
csv.reader() 返回一个遍历CSV文件各行的读取器对象
csv.writer() 返回将数据写入 CSV 文件的写入器对象
csv.register_dialect() 注册CSV方言

三、用Python来操作CSV文件

1.引入库

代码如下(示例):

import csv

2.读入数据(使用csv.reader)

代码如下(示例):

import csv
#open的第一个参数为文件名,第二个参数为打开的类型"r"为读,'w'为写,'a'为追加等等
csvFile = open("filename.csv","r")
reader = csv.reader(csvFile)
#将reader转化为list,方便进行遍历
listReader =list(reader)
#对reader进行按行遍历
for row in listReader:print(row)

3.写入数据(使用csv.writer)

import csv
array=[["姓名","年龄","性别"],["吴金红","30","男"],["姜峰","24","女"],["雷建国","60","男"]]
csvFile = open('filename.csv', 'w',newline='')
#如果不加入newline='',那么每写入一行数据,就会写入一行空白。可以去掉自行验证
with csvFile:writer = csv.writer(csvFile)#将array按行写入writer.writerows(array)

4. CSV自定义方言(dialect)

CSV文件中的格式有很多:逗号分隔 、冒号分隔等等。但是当实际文件的分隔符与内置的分隔符不同时,处理起来就会存在一定的问题。
而dialect方法可以自己规定格式来读取或写入。

import csv
#注册一个名为myDialect的方言,分隔符为'*'
csv.register_dialect("myDialect", delimiter="*")csvFile = open('filename.csv', 'w',newline='')with csvFile:# dialect="myDialect"用来指定方言writer = csv.writer(csvFile, dialect="myDialect")writer.writerow(("姓名", "吴金红")) writer.writerow(("年龄", 24))writer.writerow(("性别", "男"))writer.writerow(("身高", 175))

总结

以上就是今天要讲的内容,本文对csv做了简要的介绍,并用python实现了csv文件的读取和写入操作,如有不正确的地方,欢迎指正。

Python CSV简介相关推荐

  1. Python csv模块的使用

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

  2. 大数据教程【05.01】--Python 数据分析简介

    更多信息请关注WX搜索GZH:XiaoBaiGPT Python数据分析简介 本教程将介绍如何使用Python进行大数据分析.Python是一种功能强大且易于使用的编程语言,具备丰富的数据分析库和工具 ...

  3. Python csv、xlsx、json、二进制(MP3) 文件读写基本使用

    Python csv.xlsx.json.二进制(MP3) 文件读写基本使用 文章目录 Python csv.xlsx.json.二进制(MP3) 文件读写基本使用 前言 一.什么是文件读写? 二.文 ...

  4. python csv 模块的使用

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

  5. 《从问题到程序:用Python学编程和计算》——1.2 Python语言简介

    本节书摘来自华章计算机<从问题到程序:用Python学编程和计算>一书中的第1章,第1.2节,作者 裘宗燕,更多章节内容可以访问云栖社区"华章计算机"公众号查看. 1. ...

  6. Python列表简介

    Python列表简介 什么是列表 #普通的变量定义形式 tom ='Tom' jack ='Jack' john ='John'pet1 ='cat' pet2 ='dog' pet3 ='bird' ...

  7. Python CSV Reader/Writer

    Python CSV Reader/Writer 一. 基础背景: Python 天生支持读取CSV 格式数据并且是可配置的. 在 Python 里边有个模块 csv , 它包含了CSV 读取/生成所 ...

  8. Python编程简介

    Python编程简介 2011年06月23日 NOTE: The following is a short tutorial about python program, for Chinese rea ...

  9. python树结构输出到excel_【IT专家】使用Excel电子表格表示树层次结构,以便Python CSV reader轻松解析?...

    本文由我司收集整编,推荐下载,如有疑问,请与我司联系 使用 Excel 电子表格表示树层次结构,以便 Python CSV reader 轻松解 析? 使用 Excel 电子表格表示树层次结构,以便 ...

  10. Python——CSV读取大文件报错_csv.Error: field larger than field limit

    Python--CSV读取大文件报错_csv.Error: field larger than field limit 使用Python读取较大的csv文件时,可能出现大字段,导致超过字段默认限制,从 ...

最新文章

  1. python提取abaqus数据_Python语言在ABAQUS数据提取中的简单应用
  2. redis便捷启动,shell启动redis
  3. JAVA异常处理分析(中)
  4. 实现if_数组实现固定栈和队列+栈与队列相互实现
  5. python读取配置文件获取所有键值对_python读取配置文件
  6. 声智科技完成B轮2亿元融资,AI方案遍布百度小米华为阿里产品
  7. session的创建方式
  8. wpf 点击某控件范围之外的区域 该控件隐藏_手机键盘交互细节:视觉效果与触发区域之间的交互逻辑...
  9. foremost文件删除恢复
  10. SoapUI SoapUI接口测试之编码设置
  11. iredmail mysql 配置_CentOS下iRedMail安装配置
  12. cocos 添加遮罩后白屏_Cocos2dx3.2 Crazy Tetris 由于遮罩引起的部分手机白屏
  13. 在生鲜电商领域创业到底是怎样的一种苦逼体验?【创业者说】
  14. java对齐_java字符串对齐方法
  15. 用手机访问计算机共享资源,怎么进入共享文件夹?手机访问电脑局域网共享文件夹的方法...
  16. 机器学习中的数学(七):独立成分分析(ICA)以及FastICA算法
  17. 打怪升级之FIFO读完了再读会坏掉嘛?
  18. FPGA串口(rs422)调试笔记
  19. naive bayes java_Naive Bayes(朴素贝叶斯)
  20. Java高并发与多线程网络编程

热门文章

  1. 谷歌神经网络机器翻译NMT:人人可利用TensorFlow快速建立翻译模型
  2. 计算机考研复试面试题专业知识整理
  3. oracle if else怎么用,oracle if else语句使用介绍
  4. scikit-learn中的OneHotEncoder用法
  5. 韩顺平php ecshop,ecshop教程
  6. 【OpenGL基础】|| GLAD配置
  7. shell-5.随机数,嵌套循环,expect
  8. java 实现三角函数边长计算完整代码
  9. 《数据结构》实验三:单链表
  10. java编程导出pdf_java中根据模板生成pdf文件