Python读写csv文件流程及异常解决


Posted in Python onOctober 20, 2020

逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本)。纯文本意味着该文件是一个字符序列,不含必须像二进制数字那样被解读的数据。CSV文件由任意数目的记录组成,记录间以某种换行符分隔;每条记录由字段组成,字段间的分隔符是其它字符或字符串,最常见的是逗号或制表符。通常,所有记录都有完全相同的字段序列.

特点

  • 读取出的数据一般为字符类型,如果是数字需要人为转换为数字
  • 以行为单位读取数据
  • 列之间以半角逗号或制表符为分隔,一般为半角逗号
  • 一般为每行开头不空格,第一行是属性列,数据列之间以间隔符为间隔无空格,行之间无空行。

行之间无空行十分重要,如果有空行或者数据集中行末有空格,读取数据时一般会出错,引发[list index out of range]错误。PS:已经被这个错误坑过很多次!

使用python I/O写入和读取CSV文件

使用PythonI/O写入csv文件

Python读写csv文件流程及异常解决

Python读写csv文件流程及异常解决

常见错误list index out of range

其中我们重点需要讲的是 with open(birth_weight_file, "w", newline='') as f: 这个语句。表示写入csv文件,如果不加上参数 newline='' 表示以空格作为换行符,而是用 with open(birth_weight_file, "w") as f: 语句。则生成的表格中会出现空行。

Python读写csv文件流程及异常解决

不仅仅是用python I/O进行csv数据的读写时,利用其余方法读写csv数据,或者从网上下载好csv数据集后都需要查看其每行后有没有空格,或者有没有多余的空行。避免不必要的错误~影响数据分析时的判断。

使用PythonI/O读取csv文件

使用python I/O方法进行读取时即是新建一个List 列表然后按照先行后列的顺序(类似C语言中的二维数组)将数据存进空的List对象中,如果需要将其转化为numpy 数组也可以使用np.array(List name)进行对象之间的转化。

Python读写csv文件流程及异常解决

使用Pandas读取CSV文件

Python读写csv文件流程及异常解决

使用Tensorflow读取CSV文件

本人在平时一般都是使用Tensorflow处理各类数据,所以对于使用Tensorflow读取数据在此不过多的进行解释。

Python读写csv文件流程及异常解决

还有其他使用python读取文件的各种方法,这里介绍三种,不定期进行补充。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
pydev使用wxpython找不到路径的解决方法
Feb 10 Python
python基础教程之元组操作使用详解
Mar 25 Python
python中迭代器(iterator)用法实例分析
Apr 29 Python
Python中的ConfigParser模块使用详解
May 04 Python
python实现word 2007文档转换为pdf文件
Mar 15 Python
基于循环神经网络(RNN)的古诗生成器
Mar 26 Python
使用Python3+PyQT5+Pyserial 实现简单的串口工具方法
Feb 13 Python
Python完成毫秒级抢淘宝大单功能
Jun 06 Python
python matplotlib 绘图 和 dpi对应关系详解
Mar 14 Python
Python中常用的os操作汇总
Nov 05 Python
浅谈盘点5种基于Python生成的个性化语音方法
Feb 05 Python
Python Spyder 调出缩进对齐线的操作
Feb 26 Python
Python脚本打包成可执行文件过程解析
Oct 20 #Python
PyQt5的QWebEngineView使用示例
Oct 20 #Python
Python测试框架:pytest学习笔记
Oct 20 #Python
如何快速一次性卸载所有python包(第三方库)呢
Oct 20 #Python
Python模块常用四种安装方式
Oct 20 #Python
关于PyCharm安装后修改路径名称使其可重新打开的问题
Oct 20 #Python
编写python代码实现简单抽奖器
Oct 20 #Python
You might like
php创建多级目录代码
2008/06/05 PHP
PHP实现动态压缩js与css文件的方法
2018/05/02 PHP
yii2的restful api路由实例详解
2019/05/14 PHP
jquery ready函数源代码研究
2009/12/06 Javascript
jQuery $.each的用法说明
2010/03/22 Javascript
基于jquery的DIV随滚动条滚动而滚动的代码
2012/07/20 Javascript
详解Javascript动态操作CSS
2014/12/08 Javascript
jQuery实现流动虚线框的方法
2015/01/29 Javascript
javascript异步编程代码书写规范Promise学习笔记
2015/02/11 Javascript
实现无刷新联动例子汇总
2015/05/20 Javascript
JavaScript中setFullYear()方法的使用详解
2015/06/11 Javascript
jQuery基于cookie实现的购物车实例分析
2015/12/24 Javascript
JavaScript知识点总结之如何提高性能
2016/01/15 Javascript
需要牢记的JavaScript基础知识
2016/09/25 Javascript
AngularJS创建自定义指令的方法详解
2016/11/03 Javascript
jQuery插件FusionCharts绘制的3D环饼图效果示例【附demo源码】
2017/04/02 jQuery
深入理解Angular4订阅(Subscribe)与取消
2017/11/22 Javascript
JavaScript根据json生成html表格的示例代码
2018/10/24 Javascript
JavaScript深入V8引擎以及编写优化代码的5个技巧
2019/06/24 Javascript
你或许不知道的一些npm实用技巧
2019/07/04 Javascript
微信小程序 组件的外部样式externalClasses使用详解
2019/09/06 Javascript
vue-cli3.X快速创建项目的方法步骤
2019/11/14 Javascript
vue项目中监听手机物理返回键的实现
2020/01/18 Javascript
微信小程序实现单个或多个倒计时功能
2020/11/01 Javascript
Python时区设置方法与pytz查询时区教程
2013/11/27 Python
Python 中 function(#) (X)格式 和 (#)在Python3.*中的注意事项
2018/11/30 Python
python实现机器人卡牌
2019/10/06 Python
Python读取YAML文件过程详解
2019/12/30 Python
HelloFresh澳大利亚:订购你的美味食品盒、健康餐食
2018/03/28 全球购物
英国健身超市:Fitness Superstore
2019/06/17 全球购物
求职信的要素有哪些呢
2013/12/26 职场文书
文明家庭先进事迹材
2014/01/27 职场文书
小学生环保标语
2014/06/13 职场文书
支部书记四风对照材料
2014/08/28 职场文书
乡镇安全生产月活动总结
2015/05/08 职场文书
个人收入证明格式
2015/06/24 职场文书