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中尝试多线程编程的一个简明例子
Apr 07 Python
详解Python中find()方法的使用
May 18 Python
python下载文件记录黑名单的实现代码
Oct 24 Python
基于Python pip用国内镜像下载的方法
Jun 12 Python
Python3.5内置模块之os模块、sys模块、shutil模块用法实例分析
Apr 27 Python
Django项目uwsgi+Nginx保姆级部署教程实现
Apr 19 Python
Django之腾讯云短信的实现
Jun 12 Python
高考考python编程是真的吗
Jul 20 Python
用python写PDF转换器的实现
Oct 29 Python
matplotlib bar()实现百分比堆积柱状图
Feb 24 Python
解析python中的jsonpath 提取器
Jan 18 Python
PYTHON使用Matplotlib去实现各种条形图的绘制
Mar 22 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安全配置
2006/12/06 PHP
ThinkPHP php 框架学习笔记
2009/10/30 PHP
跟我学Laravel之快速入门
2014/10/15 PHP
php调用新浪短链接API的方法
2014/11/08 PHP
php安装swoole扩展的方法
2015/03/19 PHP
php对二维数组进行相关操作(排序、转换、去空白等)
2015/11/04 PHP
PHP实现的贪婪算法实例
2017/10/17 PHP
基于ThinkPHP5框架使用QueryList爬取并存入mysql数据库操作示例
2019/05/25 PHP
PHP实现的62进制转10进制,10进制转62进制函数示例
2019/06/06 PHP
Jquery中CSS选择器用法分析
2015/02/10 Javascript
JavaScript实现的类字典插入或更新方法实例
2015/07/10 Javascript
SWFObject基本用法实例分析
2015/07/20 Javascript
js中不同的height, top的区别对比
2015/09/24 Javascript
常用原生JS兼容性写法汇总
2016/04/27 Javascript
一篇文章搞定JavaScript类型转换(面试常见)
2017/01/21 Javascript
JavaScript捕捉事件和阻止冒泡事件实例分析
2018/08/03 Javascript
微信小程序自定义导航栏
2018/12/31 Javascript
微信小程序class封装http代码实例
2019/08/24 Javascript
JS几个常用的函数和对象定义与用法示例
2020/01/15 Javascript
Vue.js获取手机系统型号、版本、浏览器类型的示例代码
2020/05/10 Javascript
jQuery+css实现的点击图片放大缩小预览功能示例【图片预览 查看大图】
2020/05/29 jQuery
[10:39]DOTA2上海特级锦标赛音乐会纪录片
2016/03/21 DOTA
[36:29]2018DOTA2亚洲邀请赛 4.1 小组赛 A组加赛 LGD vs TNC
2018/04/02 DOTA
numpy下的flatten()函数用法详解
2019/05/27 Python
如何利用Anaconda配置简单的Python环境
2019/06/24 Python
Python分析彩票记录并预测中奖号码过程详解
2019/07/09 Python
python3 批量获取对应端口服务的实例
2019/07/25 Python
python图的深度优先和广度优先算法实例分析
2019/10/26 Python
解决python执行较大excel文件openpyxl慢问题
2020/05/15 Python
goodhealth官方海外旗舰店:新西兰国民营养师
2017/12/15 全球购物
巴西香水和化妆品购物网站:The Beauty Box
2019/09/03 全球购物
应届生会计求职信
2013/11/11 职场文书
高一家长会邀请函
2014/01/12 职场文书
鲁迅故居导游词
2015/02/05 职场文书
西柏坡观后感
2015/06/08 职场文书
MYSQL常用函数介绍
2022/05/05 MySQL