python通过通配符复制文件

Joh*_*nny 49 python glob copy file shutil

我正在学习python(python 3),我可以通过执行此操作将1个文件复制到新目录

import shutil 
shutil.copyfile('C:/test/test.txt', 'C:/lol/test.txt')
Run Code Online (Sandbox Code Playgroud)

我现在要做的是将所有*.txt文件从C:/复制到C:/ test

*.txt是一个通配符,用于搜索硬盘上的所有文本文件

小智 70

import glob
import shutil
dest_dir = "C:/test"
for file in glob.glob(r'C:/*.txt'):
    print(file)
    shutil.copy(file, dest_dir)
Run Code Online (Sandbox Code Playgroud)

  • 我找到了答案@ivanleoncz.r在python中的字符串之前使用以覆盖转义序列(即\n将被视为\n而不是新行).在答案中,使用r没有区别,因为没有转义序列,但如果文件分隔符是\而不是/,则会注意到影响.换句话说,r与glob无关.它是一个可以在python中的字符串之前使用的前缀 (6认同)
  • 它在 python 中被称为原始字符串:) https://docs.python.org/2.0/ref/strings.html (2认同)

Ign*_*ams 11

使用glob.glob()得到匹配的文件名列表,然后遍历列表.

  • damnit 2 seconds too early :D (2认同)