Python os库与shutil库:文件与文件夹操作14法详析对比
创始人
2024-12-27 14:35:41
0 次浏览
0 评论
关于Python的os库与shutil库对文件与文件夹实现复制,移动,删除,创建的14个方法详情的对比
一般来说,处理文件或文件夹并不困难,但确实需要注意一些细节。下文将进行对比说明。
1.2功能实现方法比较1.3名词介绍2.复制文件2.1Shutil中复制文件的方法介绍功能:在文件之间复制数据。
参数:src为源文件的地址,dst为目标文件的地址,Follow_symlinks跟随符号链接,默认值为True,即当src为软链接时,软链接指向的文件被复制。
设置为False,则复制软链接本身。
笔记。
如果dst文件不存在,则会创建它。
如果存在,它将被覆盖。
如果与src文件同名,否则会出错。
将被报告。
返回值:新建文件对应的路径。
必要分析:copyfile函数本质上是通过Shutil.copyfileobj来复制文件的。
2.2复制方式Shutil引入了以下功能:复制数据+文件权限模式到文件或文件夹。
参数:src-文件的源地址,dst-目标文件或文件夹的路径。
返回值:新建文件对应的路径。
基本分析:复制函数首先调用Shutil.copyfile复制内容,然后调用Shutil.copymode复制其他信息。
2.3方法copy2Shutil引入了以下功能:复制文件数据+权限模式+最后访问时间+最后修改时间+文件或文件夹标志。
参数:src-文件的源地址,dst-目标文件或文件夹的路径。
返回值:新建文件对应的路径。
必要分析:copy2函数首先调用Shutil.copyfile复制内容,然后调用Shutil.copystat复制其他信息。
2.4方法简述3.复制文件夹3.1Shutil中复制树方法介绍:递归地将以src为根起点的整个目录树复制到名为dst的目录,并返回到目标目录。
参数:src-文件夹的源路径,dst-目标文件夹的路径。
基本分析:copytree函数使用os.madeirs和创建文件夹使用copy_function指定的方法复制文件。
3.2方法简述4.移动文件和文件夹4.1Shutil移动方法介绍4.2操作系统重命名方法介绍功能:将文件或目录src重命名为dst。
参数:移动文件时,src为源文件的地址,dst为目标文件的地址,目标文件必须不存在。
移动文件夹时,src是源文件夹的地址,dst是目标文件夹的地址,目标文件夹必须不存在。
返回值:无。
介绍4.3os版本重命名方法。
功能:将旧文件或目录重命名为新文件或目录。
参数:移动文件时,src为源文件的地址,dst为目标文件的地址,目标文件必须不存在。
移动文件夹时,src是源文件夹的地址,dst是目标文件夹的地址,目标文件夹必须不存在。
笔记。
与重命名相比,重命名可以为dst创建中间文件夹,还可以递归删除src位置上的空父目录。
返回值:无。
必要分析:rename函数首先调用os.rename移动文件,然后调用os.removdirs递归删除空父目录。
OS4.4中的replace方法现在有一个功能:将文件或目录src重命名为dst。
参数:替换文件时,src为源文件地址,dst为目标文件地址,目标文件不存在则创建,存在则替换。
替换文件夹时,src为源文件夹地址,dst为目标文件夹地址,目标文件夹必须不存在。
返回值:否4.5方法简述5.删除文件5.1os删除方法介绍功能:删除(删除)文件路径。
参数:path—文件的路径。
返回值:无5.2方法简单说明6.删除文件夹6.1Shutilrmtree方法简介功能:删除一棵完整的目录树(目录及目录中的所有内容)。
选项:路径必须是文件夹,不能是软链接。
返回值:无。
引入rmdir方法版本6.2os。
功能:删除空文件夹路径。
参数:path-空文件夹地址。
返回值:无。
从6.3os版本开始引入Removeirs方法。
功能:删除一个空文件夹名。
如果删除成功,将从名称位置开始递归删除空父目录。
。
参数:name—空文件夹地址。
返回值:无。
需求分析:removerdirs函数调用os.rmdir将空文件一一删除。
6.4方法简述7.创建文件夹7.介绍1os中的mkdir方法功能:创建名为path的文件夹并设置其权限模式。
参数:path为文件夹地址,目标文件夹不能存在。
mode决定创建目录的权限,默认值为0o777,对应最高权限。
返回值:无。
介绍makedirs方法版本7.2os。
功能:递归目录创建功能。
与mkdir()类似,但自动创建到达最后一级目录所需的中间目录。
参数:name为目标文件夹的地址。
如果中间目录不存在,则会递归创建中间目录。
如果目标文件夹存在,则会报错。
您可以通过更改Exist_ok参数来避免该错误。
真的。
mode决定创建目录的权限,默认值为0o777,对应最高权限。
返回值:无。
需分析:makedirs函数通过调用os.mkdir实现递归目录创建。
7.3方法简述
浅谈Python目录操作--下
在计算机存储中,信息通常以文件的形式存在。
文件被操作系统组织成目录(文件夹)结构,并以路径的形式进行索引和管理。
Python的操作系统库提供了强大的路径处理功能。
首先,os.path模块用于处理操作系统之间目录分隔符的差异。
例如,Unix和类Unix系统使用“/”作为分隔符,但Windows通过join函数自动适应这些差异,从而更容易合并路径。
组合函数在组合路径以适应所使用的系统时处理分隔符问题。
对于Unix/类Unix系统:
split函数用于分割路径并提取路径和文件名。
这在处理文件名和路径时特别有用。
示例:
要从路径中删除目录分隔符,请使用split方法。
OS库中的abspath、isabs、relpath等函数分别用于生成绝对路径、判断路径是否绝对、获取相对路径。
您可以使用getsize函数获取文件大小,例如统计下载文件夹中sw1.txt和sw2.txt的总大小。
操作系统库创建以下文件:和还提供删除功能。
目录,显示目录内容、切换目录、遍历目录树等操作(mkdir/makedirs用于创建目录,rmdir/removedirs用于删除目录,listdir用于显示目录内容)、chdirgetcwd用于切换路径,walk用于递归遍历目录树。
Python常用标准库之OS模块
在编写脚本或处理数据时,查找和操作文件通常是必不可少的。为了简化这个过程,Python提供了“os”模块,其中包含各种用于处理文件和目录的函数。
本文重点介绍日常学习和工作中经常使用的方法。
更多详细信息请参阅操作系统官方文档。
首先导入需要的库:本文以Windows系统为例。
os.name-用于获取当前操作系统名称,例如Windows系统,结果为“nt”。
os.getcwd()-用于获取当前工作目录。
os.listdir()-用于获取当前工作目录中的所有文件和文件夹。
os.mkdir()-用于创建文件夹。
os.makedirs()-用于创建多级目录。
os.chdir()-用于切换目录。
os.remove()-用于删除文件。
os.system(command)-用于运行shell命令。
通过os.system()或os.popen()调用shell脚本。
前者返回脚本退出状态代码,后者返回执行期间的输出。
os.rename()-用于重命名文件或路径。
os.path.split()-用于分隔文件名和路径。
os.path.exists()-用于检查路径是否存在。
os.path.isfile()-用于检查路径是否是文件。
os.path.isdir()-用于检查路径是否是目录。
os.path.abspath()-用于获取绝对路径。
os.path.getsize()-用于获取文件大小(以字节为单位)。
os.path.join()-用于连接目录和文件名。
os.path.basename()-用于从路径获取文件名。
os.path.dirname(path)-用于从路径获取目录名称。
本文基本总结了os模块的常用方法,满足你的日常需求。
如果想了解更多,请直接查看官方文档。
时,如果需要清晰的思维导图,可以私信博主。
其他标准库:标准库中的time模块,Python中常用的;标准库中的datetime模块,Python中常用的;标准库中的random模块,Python中常用的。
相关文章
Python字符串判断技巧:数字、字母及...
2024-12-15 14:19:01Python编程:绘制彩色蟒蛇教程及Py...
2024-12-23 22:46:10Python数据结构揭秘:列表与链表性能...
2024-12-18 17:42:53Python编程入门:新手必看常见错误及...
2024-12-31 16:08:29Python编程技巧分享:生成随机姓名、...
2024-12-30 02:23:35C语言函数编写与调试全攻略
2024-12-30 15:06:28Python join函数使用详解:列表...
2024-12-16 17:38:30Python列表操作指南:数字提取与索引...
2024-12-18 03:07:50Python循环控制技巧:结束与次数统计...
2024-12-24 23:02:39Python字符串数组互转技巧解析
2024-12-15 02:16:05最新文章
12
2025-01
12
2025-01
12
2025-01
12
2025-01
12
2025-01
12
2025-01
12
2025-01
12
2025-01
12
2025-01
12
2025-01
热门文章
1
Python中的format()方法:字...
formatformat在python中的含义2222.22E+00Format...
2
Python编程入门:全面解析Pytho...
python的基本语法基本的Python语法如下:1.变量的定义。在编程语言中,...
3
Python字符串大小写转换方法全解析
python中字母的大小写转换怎么实现?在Python中,大小写转换由内置函数处...
4
Python字典:轻松获取最小值键与计算...
python在一个字典里,返回值最小元素对应的键,救解在Python字典中,如果...
5
Python字符串去重空格:strip(...
Python去除字符串中空格(删除指定字符)的3种方法在Python编程中,处理...
6
Python数组元素数量计算技巧分享
Python输出数组有多少个元素?简介:在本文中,首席CTO笔记将向您介绍Pyt...
7
简述python中pass的作用
pass语句的作用在许多编程语言中,包括Python;PASS语句用于在代码块中...
8
Python def 关键字详解:函数定...
def是什么意思编程?戴夫是什么意思?def是Python中的函数定义关键字,用...
9
python不区分大小写的方法
Python字符串不区分大小写在Python中,字符串操作默认区分大小写。但有时...
10
Python字典操作全解析:添加、修改、...
Pythondict字典基本操作(包括添加、修改、删除键...