美文网首页
python操作文件,强大的shutil模块

python操作文件,强大的shutil模块

作者: 周周周__ | 来源:发表于2019-03-14 10:49 被阅读0次

    最近的工作中操作对文件的操作比较频繁,就整理了一些关于shutil包的操作

    shutil是一个比较强大的python的操作文件的包

    安装

    pip install shutil
    

    在工作的过程中,用到的只是部分的功能,持续更新。。。。。

    1、复制文件

    这是比较常用的功能

    1.shutil.copy()
    #返回值是复制之后的路径
    shutil.copy('来源文件','目标地址')
    

    2.shutil.copy2()

    和shutil.copy()差不多,复制后的结果保留了原来的所有信息(包括状态信息)

    3.shutil.copyfile()

    将一个文件的内容拷贝的另外一个文件当中

    #返回值是复制之后的路径
    shutil.copyfile(来源文件,目标文件)
    
    4.shutil.copyfileobj()

    将一个文件的内容拷贝的另外一个文件当中
    (用的比较少)

    shutil.copyfileobj(open(来源文件,'r'),open('目标文件','w'))
    

    5.shutil.copytree()

    复制整个文件目录
    (无论文件夹是否为空,均可以复制,而且会复制文件夹中的所有内容)

    shutil.copytree(来源目录,目标目录)
    

    6.copymode(),copystat()

    不常用

    2. 删除文件

    1.shutil.retree()(删除的是文件夹,如果删除文件os.unlink(path))

    移除整个目录,无论是否空

    shutil.rmtree(目录路径)
    

    3.移动文件

    move()

    shutil.move(来源地址,目标地址)
    

    案列分享

    有时候在进行大量文件复制的过程中,会出现同样名字被覆盖的问题
    看到很多案列感觉麻烦,懒人有懒人的办法

    import os
    import time
    # 判断文件名已经存在
     if os.path.exists(file_path+'\\'+wordFile2):
            #把原来的文件名进行改掉   
            #主要是如果循环多,重复的名字多,所以用时间戳进行代替,不会弄重复  
            os.rename(file_path+'\\'+wordFile2, file_path+'\\'+str(time.time())+wordFile2)
    

    相关文章

      网友评论

          本文标题:python操作文件,强大的shutil模块

          本文链接:https://www.haomeiwen.com/subject/xlfqmqtx.html