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中scipy.misc.logsumexp函数的运用场景
Jun 23 Python
python django 增删改查操作 数据库Mysql
Jul 27 Python
python函数式编程学习之yield表达式形式详解
Mar 25 Python
python2.6.6如何升级到python2.7.14
Apr 08 Python
Python Json模块中dumps、loads、dump、load函数介绍
May 15 Python
用Python和WordCloud绘制词云的实现方法(内附让字体清晰的秘笈)
Jan 08 Python
python数据挖掘需要学的内容
Jun 23 Python
Django项目主urls导入应用中views的红线问题解决
Aug 10 Python
python自动识别文本编码格式代码
Dec 26 Python
tensorflow-gpu安装的常见问题及解决方案
Jan 20 Python
解析Python 偏函数用法全方位实现
Jun 26 Python
Python简易开发之制作计算器
Apr 28 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 日期时间函数的高级应用技巧
2009/10/10 PHP
PHP正则验证Email的方法
2015/06/15 PHP
深入理解PHP 数组之count 函数
2016/06/13 PHP
php微信公众号开发模式详解
2016/11/28 PHP
PHP获取路径和目录的方法总结【必看篇】
2017/03/04 PHP
php实现微信支付之企业付款
2018/05/30 PHP
PHP crc32()函数讲解
2019/02/14 PHP
浅谈JavaScript中面向对象技术的模拟
2006/09/25 Javascript
jquery 经典动画菜单效果代码
2010/01/26 Javascript
Node.js中AES加密和其它语言不一致问题解决办法
2014/03/10 Javascript
jQuery移动端图片上传组件
2016/06/12 Javascript
浅谈JS函数定义方式的区别
2016/10/30 Javascript
jquery网页日历显示控件calendar3.1使用详解
2016/11/24 Javascript
vue-router跳转页面的方法
2017/02/09 Javascript
inner join 内联与left join 左联的实例代码
2017/09/18 Javascript
layui.js实现的表单验证功能示例
2017/11/15 Javascript
Angular中sweetalert弹框的基本使用教程
2018/07/22 Javascript
AngularJS 监听变量变化的实现方法
2018/10/09 Javascript
Vue3项目打包后部署到服务器 请求不到后台接口解决方法
2020/02/06 Javascript
24个ES6方法解决JS实际开发问题(小结)
2020/05/31 Javascript
Vue-cli打包后如何本地查看的操作
2020/09/02 Javascript
Python3.x和Python2.x的区别介绍
2013/02/12 Python
在Python中操作时间之tzset()方法的使用教程
2015/05/22 Python
Django使用AJAX调用自己写的API接口的方法
2019/03/06 Python
Python 运行.py文件和交互式运行代码的区别详解
2019/07/02 Python
python使用PIL和matplotlib获取图片像素点并合并解析
2019/09/10 Python
Python字典常见操作实例小结【定义、添加、删除、遍历】
2019/10/25 Python
python如何使用代码运行助手
2020/07/03 Python
Python如何截图保存的三种方法(小结)
2020/09/01 Python
澳大利亚女性快速时尚零售商:Ally Fashion
2018/04/25 全球购物
网上常见的一份Linux面试题(多项选择部分)
2015/02/07 面试题
主持词开场白
2014/03/17 职场文书
幼儿园运动会口号
2014/06/07 职场文书
车辆挂靠协议书
2016/03/23 职场文书
Python类方法总结讲解
2021/07/26 Python
sentinel支持的redis高可用集群配置详解
2022/04/01 Redis