欢迎访问宙启技术站
智能推送

利用Python中的glob模块批量拷贝指定目录下的文件

发布时间:2024-01-04 09:29:04

在Python中,我们可以使用glob模块来进行文件路径的模式匹配,从而实现批量拷贝指定目录下的文件。glob模块使用一种类似于正则表达式的语法来匹配文件路径,可以方便地筛选出所需的文件。

首先,我们需要导入glob模块:

import glob

接下来,我们可以使用glob.glob()函数来获取匹配指定模式的文件路径。该函数接受一个带有通配符的文件路径模式作为参数,并返回一个包含匹配到的文件路径的列表。例如,如果我们要获取当前目录下的所有txt文件的路径,可以使用以下代码:

txt_files = glob.glob('*.txt')

如果要获取指定目录下的文件,可以将目录路径和通配符组合起来,例如:

files = glob.glob('path/to/files/*.txt')

然后,我们可以使用文件操作相关的函数来进行文件拷贝操作。以下是一个利用shutil模块进行文件拷贝的例子:

import shutil

# 指定源文件夹和目标文件夹
src_dir = 'source'
dst_dir = 'destination'

# 获取源文件夹下的所有txt文件路径
txt_files = glob.glob(src_dir + '/*.txt')

# 遍历文件列表,逐个进行拷贝操作
for file in txt_files:
    # 构建目标文件路径
    dst_file = dst_dir + '/' + file.split('/')[-1]
    
    # 执行拷贝操作
    shutil.copy(file, dst_file)

上述代码中,我们首先指定源文件夹和目标文件夹的路径。然后使用glob.glob()函数获取源文件夹下的所有txt文件路径,并存储在txt_files列表中。接下来,我们遍历这个列表,逐个进行拷贝操作。

在每次拷贝中,我们首先通过file.split('/')[-1]获取文件名,然后结合目标文件夹路径,构建目标文件路径dst_file。最后,使用shutil.copy()函数进行文件拷贝操作,将源文件拷贝到目标文件路径。

通过以上代码,我们可以批量拷贝指定目录下的文件。需要注意的是,你可以根据实际需要修改glob.glob()函数中的文件路径模式,以匹配到你需要拷贝的文件类型或者其他条件。

综上所述,利用glob模块可以很方便地批量拷贝指定目录下的文件,我们只需要使用glob.glob()函数获取到指定的文件路径列表,再通过文件操作函数进行拷贝操作即可。希望以上内容对你有帮助!