详解Python文本操作相关模块

yipeiwu_com5年前Python基础

详解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 中矩阵或者数组相减的法则详解

最近在做编程练习,发现有些结果的值与答案相差较大,通过分析比较得出结论,大概过程如下: 定义了一个计算损失的函数: def error(yhat,label): yhat = np...

python指定写入文件时的编码格式方法

实例如下: #encoding=utf-8 content=u"广东松炀再生资源股份有限" content=content.encode("utf-8")#写入的文件编码格式为utf...

Python中operator模块的操作符使用示例总结

operator模块是python中内置的操作符函数接口,它定义了一些算术和比较内置操作的函数。operator模块是用c实现的,所以执行速度比python代码快。 逻辑操作 fr...

使用python PIL库实现简单验证码的去噪方法步骤

使用python PIL库实现简单验证码的去噪方法步骤

字符型图片验证码识别完整过程及Python实现的博主,我的大部分知识点都是从他那里学来的。 想要识别验证码,收集足够多的样本后,首先要做的就是对验证码原始图片进行处理,对验证码识别分类之...

python实现基于朴素贝叶斯的垃圾分类算法

python实现基于朴素贝叶斯的垃圾分类算法

一、模型方法        本工程采用的模型方法为朴素贝叶斯分类算法,它的核心算法思想基于概率论。我们称之为“朴素”,是因为整个形式化过程只做最原...