当前位置:   article > 正文

Python文件操作之os模块、shutil模块、zipfile模块_oszipw

oszipw

os模块

os模块是Python标准库中一个重要的模块,里面提供了对目录和文件的一般常用操作。

os模块的常用方法

import os              导入模块
os.remove()            删除文件
os.rename()            重命名文件
os.walk()              生成器,用for循环遍历目录下的所有文件,返回元祖(root,dirs,files)
                        root:当前遍历的文件夹的绝对路径;
	                    dirs:当前文件夹下的所有子文件夹的名称(仅一层,孙子文件夹不包括)
	          	        files:当前文件夹下的所有文件的名称
os.chdir()             修改当前工作目录
os.mkdir()             创建目录,可以是绝对路径也可以是工作目录的相对路径
os.makedirs()          创建多层目录
os.rmdir()             删除目录,可以是绝对路径也可以是工作目录的相对路径
os.removedirs()        删除多层目录
os.listdir()           列出指定目录的文件
os.getcwd()            取得当前工作目录
os.popen('cmd')        cmd操作管道
os.system()            shell命令
os.chmod()             改变目录权限
os.stat()     		   查看文件或者目录的详细信息

os.path.getsize()      返回文件大小
os.path.exists()       判断是否存在
os.path.isabs()        是否为绝对路径
os.path.isdir()        判断是否为目录
os.path.isfile()       判断是否为文件
os.path.basename()     返回文件名
os.path.dirname()      返回目录路径
os.path.abspath()      返回文件的绝对路径
os.path.join()         将目录和文件组合成一个新的路径
os.path.split()        分割目录和文件名并以元组的方式返回
os.path.splitext() 	   分割路径文件名和后缀并以元组的方式返回
os.path.splitdrive()   分割驱动器和路径文件名并以元组的方式返回
os.path.getatime()     返回文件或目录的访问时间
os.path.getmtime()     返回文件最后修改的时间
os.path.getctime()     返回文件或目录的创建时间
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34

shutil模块

Python另外一个标准库shutil库,它作为os模块的补充,提供了复制、移动、删除、压缩、解压等操作,这些 os 模块中一般是没有提供的。

shutil模块的常用方法

import shutil              导入模块
shutil.copyfile(src,dst)   复制指定文件,注意:src和dst必须都为文件。
shutil.copy(src,dst)       复制一个文件到一个文件或一个目录,注意:src必须为文件,dst为文件或目录,如果dst文件夹目录不存在则自动创建。
shutil.copy2(src,dst)      复制文件和copy类似,不同点在于最后访问时间与修改时间也复制过来了,但是创建时间是不会和原文件一样的,,类似于cp –p。
shutil.copytree(src,dst)   复制文件夹目录 注意:src和dst均为目录,拷贝后的文件夹的最后访问时间、修改时间都是与原文件夹一样的,只有创建时间是不一样的。如果dst存在,则不可覆盖,报错。如果dst为不存在的文件夹目录则自动创建。
shutil.move(src,dst)       移动文件、文件夹目录或者文件、目录文件夹重命名。注意:如果dst存在,则不可覆盖,报错。
shutil.rmtree(src)         删除文件夹,慎用
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

zipfile模块

对压缩包的处理是调用 ZipFile 模块来进行的。

zipfile模块的常用方法

1.zipobj.write()             创建一个压缩包

import zipfile
with zipfile.ZipFile(r"我创建的压缩包.zip", "w") as zipobj:
    for file in file_list:
        zipobj.write(file)
        
2.zipobj.namelist()          读取压缩包中的文件信息

import zipfile      
with zipfile.ZipFile("我创建的压缩包.zip", "r") as zipobj:
    print(zipobj.namelist())

3.zipobj.extract("xxx",dst)  将压缩包中的“xxx”文件,单独解压到dst文件夹下

import zipfile             
dst = r"文件夹路径"
with zipfile.ZipFile("我创建的压缩包.zip", "r") as zipobj:
    zipobj.extract("xxx",dst)
    
4.zipobj.extractall(dst)     将压缩包中的所有文件,解压到dst文件夹下

import zipfile
dst = r"文件夹路径"
with zipfile.ZipFile("我创建的压缩包.zip", "r") as zipobj:
    zipobj.extractall(dst)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/木道寻08/article/detail/838500
推荐阅读
相关标签
  

闽ICP备14008679号