利用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()函数获取到指定的文件路径列表,再通过文件操作函数进行拷贝操作即可。希望以上内容对你有帮助!
