详解Python文本操作相关模块

yipeiwu_com6年前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等。

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

相关文章

pygame实现俄罗斯方块游戏(基础篇3)

pygame实现俄罗斯方块游戏(基础篇3)

上一章请点击查看:pygame实现俄罗斯方块游戏(基础篇2) 现在继续 一、给每个方块设置不同的颜色 根据代码这里可以判断正在下落的方块在那些Block子类里加一个属性最合适,而已经落下...

使用FastCGI部署Python的Django应用的教程

作为一个mod_python模块的替代,你可以考虑使用mod_wsgi模块,此模块开发的时间比mod_python的开发时间离现在更近一些,在Django社区已有一些使用。 一个完整的概...

用Python展示动态规则法用以解决重叠子问题的示例

用Python展示动态规则法用以解决重叠子问题的示例

动态规划是一种用来解决定义了一个状态空间的问题的算法策略。这些问题可分解为新的子问题,子问题有自己的参数。为了解决它们,我们必须搜索这个状态空间并且在每一步作决策时进行求值。得益于这类问...

python 文件与目录操作

1)os.path 1.1 os.path.isabs(path) 是否是绝对路径 1.2 os.path.isfile(path) 1.3 os.path.isdir(path) 1....

Python基于csv模块实现读取与写入csv数据的方法

Python基于csv模块实现读取与写入csv数据的方法

本文实例讲述了Python基于csv模块实现读取与写入csv数据的方法。分享给大家供大家参考,具体如下: 通过csv模块可以轻松读取格式为csv的文件,而且csv模块是python内置的...