Python 文件处理注意事项总结


Posted in Python onApril 10, 2017

Python 文件处理注意事项总结

文件处理在编程中是常见的操作,文件的打开,关闭,重命名,删除,追加,复制,随机读写非常容易理解和使用。需要注意的是文件的安全关闭,采用with语句轻松便捷:

with open(pathname,”r”) as myfile: 
do_some_with(myfile)

1.CSV 的文件处理

csv 模块可以很好地处理csv文件,而Pandas 模块则可以较好的处理大型的csv文件,还可以处理HTML等,并提供分块处理。

2.XML 的文件处理

对于较小的xml文件,最好使用cElementTree,至少要用ElementTree,对于大型文件,最好用lxml处理。

3.文件内容的序列化和范序列化

用pickle 实现序列化和反序列化非常简单dump()和load()即可,但要注意,pickle不能实现原子化操作,数据源敏感,存在安全隐患。另一种序列化的形式是json。同样是dumps(),load(),扩展性好,可以指定decoder,性能比pickle差一些。

4.日志文件处理

在记录日志文件使用logging 模块是要注意logging是线程安全的,避免多个进程同时写入同一个日志。

5.图像文件处理

对于通常的文件的图像处理,PIL 模块足以应付了。在Linux环境下要注意相关图像库的安装,一般ImageMagick 库是首选。如果涉及图像识别等深层次图像处理,就要寻求OpenCV的帮助了

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Python 相关文章推荐
Python中用max()方法求最大值的介绍
May 15 Python
十个Python程序员易犯的错误
Dec 15 Python
python结合API实现即时天气信息
Jan 19 Python
python实现通过flask和前端进行数据收发
Aug 22 Python
Pytorch之view及view_as使用详解
Dec 31 Python
Python实现RabbitMQ6种消息模型的示例代码
Mar 30 Python
pip install 使用国内镜像的方法示例
Apr 03 Python
使用python-Jenkins批量创建及修改jobs操作
May 12 Python
完美解决python针对hdfs上传和下载的问题
Jun 05 Python
彻底搞懂python 迭代器和生成器
Sep 07 Python
使用Python通过oBIX协议访问Niagara数据的示例
Dec 04 Python
Python数组变形的几种实现方法
May 30 Python
python非递归全排列实现方法
Apr 10 #Python
python 生成器生成杨辉三角的方法(必看)
Apr 10 #Python
Python贪吃蛇游戏编写代码
Oct 26 #Python
OpenCV实现人脸识别
Apr 07 #Python
python使用opencv进行人脸识别
Apr 07 #Python
Python 实现链表实例代码
Apr 07 #Python
python中如何使用朴素贝叶斯算法
Apr 06 #Python
You might like
php实例分享之通过递归实现删除目录下的所有文件详解
2014/05/15 PHP
php实现图片上传并进行替换操作
2016/03/15 PHP
thinkPHP5.0框架环境变量配置方法
2017/03/17 PHP
php进程daemon化的正确实现方法
2018/09/06 PHP
JavaScript中yield实用简洁实现方式
2010/06/12 Javascript
JS实现图片预加载无需等待
2012/12/21 Javascript
兼容各大浏览器的JavaScript阻止事件冒泡代码
2015/07/09 Javascript
点评js异步加载的4种方式
2015/12/22 Javascript
JS简单循环遍历json数组的方法
2016/04/22 Javascript
微信js-sdk预览图片接口及从拍照或手机相册中选图接口用法示例
2016/10/13 Javascript
基于jQuery和Bootstrap框架实现仿知乎前端动态列表效果
2016/11/09 Javascript
浅谈MVC+EF easyui dataGrid 动态加载分页表格
2016/11/10 Javascript
JS 组件系列之 bootstrap treegrid 组件封装过程
2017/04/28 Javascript
JS实现简单抖动效果
2017/06/01 Javascript
node vue项目开发之前后端分离实战记录
2017/12/13 Javascript
微信开发之企业付款到银行卡接口开发的示例代码
2018/09/18 Javascript
JS栈stack类的实现与使用方法示例
2019/01/31 Javascript
jQuery实现经典的网页3D轮播图封装功能【附源码下载】
2019/02/15 jQuery
p5.js实现动态图形临摹
2019/10/23 Javascript
javascript贪吃蛇游戏设计与实现
2020/09/17 Javascript
Python操作MongoDB详解及实例
2017/05/18 Python
详谈python3中用for循环删除列表中元素的坑
2018/04/19 Python
用Python实现BP神经网络(附代码)
2019/07/10 Python
Django文件存储 自己定制存储系统解析
2019/08/02 Python
Python创建空列表的字典2种方法详解
2020/02/13 Python
bareMinerals官网:矿物质化妆品和护肤品
2018/02/04 全球购物
.NET方向面试题
2014/11/20 面试题
历史学专业大学生找工作的自我评价
2013/10/16 职场文书
公司成立感言
2014/01/11 职场文书
自我鉴定写作要点
2014/01/17 职场文书
优秀员工获奖感言
2014/03/01 职场文书
应聘销售主管的求职信
2014/04/26 职场文书
后备干部培训方案
2014/05/22 职场文书
匿名检举信范文
2015/03/02 职场文书
个人欠条范本
2015/07/03 职场文书
Python使用pandas导入xlsx格式的excel文件内容操作代码
2022/12/24 Python