如何根据excel中的列表查找和移动某些文件?

时间:2015-06-24 14:33:30

标签: python excel

我有一个文件夹,文件夹如下:

  • 000001_001_m
  • 000001_002_m
  • 000001_003_m
  • 000001_004_m
  • 000002_001_m
  • 000002_002_m
  • 000003_001_m

前六个字符对应于Access数据库中的唯一标识符,第一个_后面的所有内容都对应于扫描项目的页码。

我正在寻找一种方法来获取csv文件中的唯一标识符列表,查找具有匹配标识符的文件夹中的所有文件,并将它们移动到另一个文件夹。关于如何做到这一点的任何建议?

1 个答案:

答案 0 :(得分:2)

获取标识符后,您可以通过将列表转换为集合来获取唯一标识符 之后,您可以使用glob模块查找与您的模式匹配的所有文件名(identifier_*)。并使用shutil.move将找到的文件移动到目标文件夹。

import glob
import shutil

destination_folder = '/path_to/destination_folder/'

identifiers = ['000001', '000001', '000002', '000002', '000003']
unique_identifiers = set(identifiers)

for identifier in unique_identifiers:
    for filename in glob.glob('%s_*' % identifier):
        shutil.move(filename, destination_folder)