zoukankan      html  css  js  c++  java
  • Python学习笔记组织文件之将指定目录下的指定格式文件Copy到指定文件夹

    随笔记录方便自己和同路人查阅。

    #------------------------------------------------我是可耻的分割线-------------------------------------------

      假如你想把一个路径下的某格式文件都复制到另一个文件夹中,如果文件较多,手动复制可能会比较繁琐和麻烦,重要的是还可能复制错了,所以你希望有

    一段程序帮你完成这个繁琐且容易出错的工作。

    #------------------------------------------------我是可耻的分割线-------------------------------------------

      将指定目录下的指定格式文件复制到想要的目录下,示例代码:

    #! python 3
    # -*- coding:utf-8 -*-
    # Autor: Li Rong Yang
    '''
    Copy指定格式的文件到新文件夹
    '''
    import shutil,os
    #定义函数,接收传入的值
    def SFileToDFile(sourcefile,fileclass,destinationfile):
        #遍历目录和子目录
        for filenames in os.listdir(sourcefile):
            #取得文件或文件名的绝对路径
            filepath = os.path.join(sourcefile,filenames)
            #判断是否为文件夹
            if os.path.isdir(filepath):
                #如果是文件夹,重新调用该函数
                SFileToDFile(filepath,fileclass,destinationfile)
            #判断是否为文件
            elif os.path.isfile(filepath):
                #如果该文件的后缀为用户指定的格式,则把该文件复制到用户指定的目录
                if filepath.endswith(fileclass):
                    #dirname = os.path.split(filepath)[-1]
                    #给出提示信息
                    print('Copy %s'% filepath +' To ' + destinationfile)
                    #复制该文件到指定目录
                    shutil.copy(filepath,destinationfile)
    #函数调用
    SFileToDFile('d:\quiz','.txt','d:\test')
    

      运行结果:根据运行结果可以看出复制的文件有哪些,和复制到了那个目录下

      假如你想删除指定的文件,可以这样写,示例代码:

    #! python 3
    # -*- coding:utf-8 -*-
    # Autor: Li Rong Yang
    '''
    Copy指定格式的文件到新文件夹
    '''
    import shutil,os,send2trash
    #定义函数,接收传入的值
    def SFileToDFile(sourcefile,fileclass,destinationfile):
        #遍历目录和子目录
        for filenames in os.listdir(sourcefile):
            #取得文件或文件名的绝对路径
            filepath = os.path.join(sourcefile,filenames)
            #判断是否为文件夹
            if os.path.isdir(filepath):
                #如果是文件夹,重新调用该函数
                SFileToDFile(filepath,fileclass,destinationfile)
            #判断是否为文件
            elif os.path.isfile(filepath):
                #如果该文件的后缀为用户指定的格式,则把该文件复制到用户指定的目录
                if filepath.endswith(fileclass):
                    #dirname = os.path.split(filepath)[-1]
                    #给出提示信息
                    #print('Copy %s'% filepath +' To ' + destinationfile)
                    print('Delet %s to recycle bin.'%filepath)
                    #删除文件
                    send2trash.send2trash(filepath)
                    # 复制该文件到指定目录
                    #shutil.copy(filepath,destinationfile)
    #函数调用
    SFileToDFile('d:\quiz','.txt','d:\test')
    

      运行结果:

  • 相关阅读:
    核心数据类型
    Python入门
    [多校联考2019(Round 4 T2)][51nod 1288]汽油补给(ST表+单调栈)
    [Codeforces 1228E]Another Filling the Grid (排列组合+容斥原理)
    [luogu5339] [TJOI2019]唱、跳、rap和篮球(容斥原理+组合数学)(不用NTT)
    用生成函数推导数列的通项公式
    [Luogu 5465] [LOJ 6435] [PKUSC2018]星际穿越(倍增)
    [BZOJ4569] [Luogu 3295] [SCOI2016]萌萌哒(并查集+倍增)
    [BZOJ4444] [Luogu 4155] [LOJ 2007] [SCOI2015]国旗计划(倍增)
    倍增好题记录
  • 原文地址:https://www.cnblogs.com/lirongyang/p/9664840.html
Copyright © 2011-2022 走看看