详解Python文本操作相关模块


Posted in Python onJune 22, 2017

详解Python文本操作相关模块

linecache——通过使用缓存在内部尝试优化以达到高效从任何文件中读出任何行。

主要方法:

linecache.getline(filename, lineno[, module_globals]):获取指定行的内容 
linecache.clearcache():清除缓存 
linecache.checkcache([filename]):检查缓存的有效性

dircache——定义了一个函数,使用缓存读取目录列表、使用目录的mtime来实现缓存失效。此外还定义了标注目录的方法。

主要方法:

dircache.reset():重置目录缓存。 
dircache.listdir(path):返回path的目录列表。除非path改变,否则再次调该方法会会重复读目录结构。 
dircache.opendir(path):和listdir功能相同。存在的目的是为了后向兼容。 
dircache.annotate(head,list):假设list是相对于head的路径列表,那么在合适的位置给每个是目录的路径添加“/”

filecmp——定义了文件和目录比较的函数。

主要方法:

filecmp.cmp(f1, f2[, shallow]):比较两个文件是非相等 
filecmp.cmpfiles(dir1, dir2, common[, shallow]):比较两个目录下的相同文件名的文件是非相等。

类: class filecmp.dircmp(a, b[, ignore[, hide]]):构建一个新的目录比较对象,比较a和b。

fileinput——实现了辅助类和方法来帮助实现对标准输入或一串文本快速操作。

主要方法:

fileinput.input([files[, inplace[, backup[, bufsize[, mode[, openhook]]]]]]):创建一个 FileInput实体。 
fileinput.filename():返回当前读取的文件名 
fileinput.lineno():返回累积读取的行数 
fileinput.nextfile():关闭当前行,下个迭代会跳到去读取下一个文件的第一行。 
类: class fileinput.FileInput([files[, inplace[, backup[, bufsize[, mode[, openhook]]]]]])

os.path——包括路径以及文件属性方面的操作。

主要方法:

os.path.abspath(path):返回path的绝对路径 
os.path.dirname(path):返回path的目录名称 
os.path.exists(path):判断路径是否存在 
os.path.getatime(path):返回path上次访问的时间 
os.path.getmtime(path):返回path上次修改时间

shutil——提供了一些文件和文件集方面的高级操作。

主要方法:

shutil.copyfileobj(fsrc, fdst[, length]):将类文件对象fsrc的内容复制到类文件对象fdst 
shutil.copyfile(src, dst):将文件src的内容(不包括元数据)的内容复制到文件dst 
shutil.copymode(src, dst):将src的权限位复制给dst 
shutil.copystat(src, dst):复制权限位、最近访问时间、最近修改时间和flags。 
shutil.copy(src, dst):复制文件src到文件或目录dst。权限位也会被复制。 
shutil.copy2(src, dst):和copy()不同之处是还会复制元数据。类似先copy(),再copystat() 
shutil.rmtree(path[, ignore_errors[, onerror]]):删除整个目录树 
shutil.move(src, dst):递归移动文件或路径

除了操作一般文件,还能操作归档文件

shutil.make_archive(base_name, format[, root_dir[, base_dir[, verbose[, dry_run[, owner[, group[, logger]]]]]]]):创建归档文件。 
tempfile—— 生成临时文件和目录

主要方法:

tempfile.TemporaryFile([mode='w+b'[, bufsize=-1[, suffix=”[, prefix='tmp'[, dir=None]]]]]):返回一个能够作为临时存储区域的类文件对象。 
tempfile.mkstemp([suffix=”[, prefix='tmp'[, dir=None[, text=False]]]]):以尽可能最安全的方式创建一个临时文件。

stat——返回文件的系统状态信息等。

struct——二进制文件的操作。包括二进制数据类型和str之间的转换。

除此之外,还有其他专门针对特定类型文件(类文件)操作的模块。比如: lxml、CSV、 zipfile、 tarfile等。

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

Python 相关文章推荐
Python实现多线程抓取网页功能实例详解
Jun 08 Python
Python3单行定义多个变量或赋值方法
Jul 12 Python
Python rstrip()方法实例详解
Nov 11 Python
OpenCV搞定腾讯滑块验证码的实现代码
May 18 Python
pycharm访问mysql数据库的方法步骤
Jun 18 Python
Python PO设计模式的具体使用
Aug 16 Python
python cv2截取不规则区域图片实例
Dec 21 Python
Python使用Tkinter实现转盘抽奖器的步骤详解
Jan 06 Python
python GUI库图形界面开发之PyQt5复选框控件QCheckBox详细使用方法与实例
Feb 28 Python
python PIL模块的基本使用
Sep 29 Python
利用python 下载bilibili视频
Nov 13 Python
plt.figure()参数使用详解及运行演示
Jan 08 Python
python字符串过滤性能比较5种方法
Jun 22 #Python
Python编程实现的简单Web服务器示例
Jun 22 #Python
Python实现复杂对象转JSON的方法示例
Jun 22 #Python
Collatz 序列、逗号代码、字符图网格实例
Jun 22 #Python
基于Python3 逗号代码 和 字符图网格(详谈)
Jun 22 #Python
Tornado协程在python2.7如何返回值(实现方法)
Jun 22 #Python
使用python在本地电脑上快速处理数据
Jun 22 #Python
You might like
PHP 配置文件中open_basedir选项作用
2009/07/19 PHP
php输出xml格式字符串(用的这个)
2012/07/12 PHP
分享一个超好用的php header下载函数
2014/01/31 PHP
该如何加载google-analytics(或其他第三方)的JS
2010/05/13 Javascript
基于jquery的修改当前TAB显示标题的代码
2010/12/11 Javascript
Js参数值中含有单引号或双引号问题的解决方法
2013/11/06 Javascript
JavaScript 浏览器对象模型BOM使用介绍
2015/04/13 Javascript
JS代码防止SQL注入的方法(超简单)
2016/04/12 Javascript
js中最容易被忽视的事件问题大总结
2016/05/15 Javascript
浅谈Node.js:fs文件系统模块
2016/12/08 Javascript
详解jQuery中ajax.load()方法
2017/01/25 Javascript
关于TypeScript模块导入的那些事
2018/06/12 Javascript
解决vue 格式化银行卡(信用卡)每4位一个符号隔断的问题
2018/09/14 Javascript
微信小程序遍历Echarts图表实现多个饼图
2019/04/25 Javascript
浅谈Node 异步IO和事件循环
2019/05/05 Javascript
如何使用webpack打包一个库library的方法步骤
2019/12/18 Javascript
python共享引用(多个变量引用)示例代码
2013/12/04 Python
python通过get,post方式发送http请求和接收http响应的方法
2015/05/26 Python
快速排序的算法思想及Python版快速排序的实现示例
2016/07/02 Python
Python配置mysql的教程(推荐)
2017/10/13 Python
TensorFlow的权值更新方法
2018/06/14 Python
对python3中的RE(正则表达式)-详细总结
2019/07/23 Python
pytorch 彩色图像转灰度图像实例
2020/01/13 Python
使用python turtle画高达
2020/01/19 Python
CSS3毛玻璃效果(blur)有白边问题的解决方法
2016/11/15 HTML / CSS
使用CSS实现弹性视频html5案例实践
2012/12/26 HTML / CSS
Parfumdreams英国:香水和化妆品
2019/05/10 全球购物
中学清明节活动总结
2014/07/04 职场文书
生物工程专业求职信
2014/09/03 职场文书
谢师宴邀请函
2015/02/02 职场文书
法学专业求职信范文
2015/03/19 职场文书
js Proxy的原理详解
2021/05/25 Javascript
Python获取指定日期是"星期几"的6种方法
2022/03/13 Python
golang操作redis的客户端包有多个比如redigo、go-redis
2022/04/14 Golang
Go中使用gjson来操作JSON数据的实现
2022/08/14 Golang
MySQL中dd::columns表结构转table过程及应用详解
2022/09/23 MySQL