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 相关文章推荐
Python使用py2exe打包程序介绍
Nov 20 Python
python获得一个月有多少天的方法
Jun 04 Python
Python爬虫爬取美剧网站的实现代码
Sep 03 Python
vscode 远程调试python的方法
Dec 01 Python
ubuntu安装sublime3并配置python3环境的方法
Mar 15 Python
解决python3运行selenium下HTMLTestRunner报错的问题
Dec 27 Python
python字符串替换第一个字符串的方法
Jun 26 Python
Python高级特性——详解多维数组切片(Slice)
Nov 26 Python
numpy库ndarray多维数组的维度变换方法(reshape、resize、swapaxes、flatten)
Apr 28 Python
Pytest allure 命令行参数的使用
Apr 18 Python
python 解决微分方程的操作(数值解法)
May 26 Python
python语言中pandas字符串分割str.split()函数
Aug 05 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使浏览器直接下载pdf文件的方法
2013/11/15 PHP
PHP生成加减算法方式的验证码实例
2018/03/12 PHP
Javascript 读书笔记索引贴
2010/01/11 Javascript
关于innerHTML后丢失动态绑定的EVENT问题解决方法
2013/05/19 Javascript
jquery制作LED 时钟特效
2015/02/01 Javascript
Vue.js双向绑定操作技巧(初级入门)
2016/12/27 Javascript
详解Vue 方法与事件处理器
2017/06/20 Javascript
javascript兼容性(实例讲解)
2017/08/15 Javascript
使用webpack编译es6代码的方法步骤
2019/04/28 Javascript
Vue实现微信支付功能遇到的坑
2019/06/05 Javascript
vue下使用nginx刷新页面404的问题解决
2019/08/02 Javascript
vue element 生成无线级左侧菜单的实现代码
2019/08/21 Javascript
Javascript和jquery在selenium的使用过程
2019/10/31 jQuery
微信小程序swiper实现文字纵向轮播提示效果
2020/01/21 Javascript
vue制作toast组件npm包示例代码
2020/10/29 Javascript
[12:29]《一刀刀一天》之DOTA全时刻19:蝙蝠骑士田伯光再度不举
2014/06/10 DOTA
Python多线程编程简单介绍
2015/04/13 Python
使用python读取csv文件快速插入数据库的实例
2018/06/21 Python
Python for循环中的陷阱详解
2018/07/13 Python
python3 实现验证码图片切割的方法
2018/12/07 Python
python读取目录下所有的jpg文件,并显示第一张图片的示例
2019/06/13 Python
Python中的正则表达式与JSON数据交换格式
2019/07/03 Python
Python多继承以及MRO顺序的使用
2019/11/11 Python
Pytorch中膨胀卷积的用法详解
2020/01/07 Python
详解numpy.ndarray.reshape()函数的参数问题
2020/10/13 Python
用60行代码实现Python自动抢微信红包
2021/02/04 Python
HTML5播放实现rtmp流直播
2020/06/16 HTML / CSS
碧欧泉Biotherm加拿大官方网站:法国高端护肤品牌
2019/10/18 全球购物
几个Linux面试题笔试题
2016/08/01 面试题
就业推荐表自我鉴定
2013/10/29 职场文书
高中的自我鉴定
2013/12/16 职场文书
七夕情人节促销方案
2014/06/07 职场文书
保护环境标语
2014/06/09 职场文书
迎国庆演讲稿
2014/09/05 职场文书
Python批量解压&压缩文件夹的示例代码
2022/04/04 Python
HttpClient实现表单提交上传文件
2022/08/14 Java/Android