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 相关文章推荐
利用Psyco提升Python运行速度
Dec 24 Python
在Python中操作时间之tzset()方法的使用教程
May 22 Python
pycharm 主题theme设置调整仿sublime的方法
May 23 Python
Python文件常见操作实例分析【读写、遍历】
Dec 10 Python
Python3.5实现的罗马数字转换成整数功能示例
Feb 25 Python
Pyqt清空某一个QTreeewidgetItem下的所有分支方法
Jun 17 Python
python命令行工具Click快速掌握
Jul 04 Python
python 实现多线程下载m3u8格式视频并使用fmmpeg合并
Nov 15 Python
python使用PIL剪切和拼接图片
Mar 23 Python
Python decorator拦截器代码实例解析
Apr 04 Python
在python中修改.properties文件的操作
Apr 08 Python
详解python metaclass(元类)
Aug 13 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
使用 eAccelerator加速PHP代码的目的
2007/03/16 PHP
PHP开发规范手册之PHP代码规范详解
2011/01/13 PHP
2个Codeigniter文件批量上传控制器写法例子
2014/07/25 PHP
php实现图片局部打马赛克的方法
2015/02/11 PHP
[原创]PHP简单开启curl的方法(测试可行)
2016/01/11 PHP
PHP入门教程之日期与时间操作技巧总结(格式化,验证,获取,转换,计算等)
2016/09/11 PHP
PHP中引用类型和值类型功能与用法示例
2019/02/26 PHP
PHP实现的支付宝支付功能示例
2019/03/26 PHP
JavaScript中实现块作用域的方法
2010/04/01 Javascript
浅析jQuery中调用ajax方法时在不同浏览器中遇到的问题
2014/06/11 Javascript
JavaScript中使用数组方法汇总
2016/02/16 Javascript
详解Vue中状态管理Vuex
2017/05/11 Javascript
文本溢出插件jquery.dotdotdot.js使用方法详解
2017/06/22 jQuery
JS实现unicode和UTF-8之间的互相转换互转
2017/07/05 Javascript
改进 JavaScript 和 Rust 的互操作性并深入认识 wasm-bindgen 组件
2019/07/13 Javascript
深入理解Vue keep-alive及实践总结
2019/08/21 Javascript
JavaScript this在函数中的指向及实例详解
2019/10/14 Javascript
Nodejs使用archiver-zip-encrypted库加密压缩文件时报错(解决方案)
2019/11/18 NodeJs
微信小程序入门之指南针
2020/10/22 Javascript
[50:24]VGJ.S vs Pain 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
Python运行的17个时新手常见错误小结
2012/08/07 Python
python 对key为时间的dict排序方法
2018/10/17 Python
python实现ip代理池功能示例
2019/07/05 Python
matplotlib命令与格式之tick坐标轴日期格式(设置日期主副刻度)
2019/08/06 Python
Python如何使用k-means方法将列表中相似的句子归类
2019/08/08 Python
前台文员的岗位职责
2013/11/14 职场文书
职工运动会邀请函
2014/01/19 职场文书
物流业务员岗位职责
2014/02/08 职场文书
亲戚结婚的请假条
2014/02/11 职场文书
求职信怎么写范文
2014/05/26 职场文书
办公室班子四风问题对照检查材料
2014/10/04 职场文书
2014年小学教导处工作总结
2014/12/19 职场文书
尼克胡哲观后感
2015/06/08 职场文书
2015年迎新晚会策划书
2015/07/16 职场文书
如何理解Vue简单状态管理之store模式
2021/05/15 Vue.js
忘记Grafana不要紧2种Grafana重置admin密码方法详细步骤
2022/04/07 Servers