Я пытаюсь запустить две операции:Копирование тысячи файлов (отфильтрованные по имени) в указанную папку
- Начиная из текстового файла, содержащего некоторые идентификаторы (которые приводят к имени файла), проверяя, если этот файл находится в папке;
- Если выполняется шаг 1), копирование файла из этой папки в указанную папку.
В .txt файл хранит коды, подобные этим:
111081
112054
112051
112064
Это то, что я пытался:
from glob import glob
from shutil import copyfile
import os
input = 'C:/Users/xxxx/ids.txt'
input_folder = 'C:/Users/xxxx/input/'
dest_folder = 'C:/Users/xxxx/output/'
with open(input) as f:
for line in f:
string = "fixed_prefix_" + str(line.strip()) + '.asc'
if os.path.isfile(string):
copyfile(string, dest_folder)
Переменная string
генерирует это (например):
print string
fixed_prefix_111081.asc
Тогда я уверен, что что-то не так с поиском и копированием файла в папку назначения. Основная проблема заключается в том, что я не знаю, как искать файл fixed_prefix_111081.asc
в input_folder
.
попробовать 'line.strip()', чтобы удалить конец line char (s) –
@ Jean-FrançoisFabre Спасибо, я справился с этой проблемой. Я редактировал вопрос. – mgri