У меня есть коллекция файлов, которые я бы хотел организовать с помощью python. Файлы имеют определенный статус штата и сохраняются в структуре папок этой формы: \ state \ year \ county \ image.jpg со многими изображениями на графство. У меня есть следующий код, который копирует и переименовывает все файлы как state_year_county_image.jpg:Переименование файлов по-умному.
import os, shutil
path = "C:\\Users\\me\\"
path_copies = "C:\\Users\\me\\copies\\"
state_list = os.listdir(path)
for state in state_list:
year_list = os.listdir(path+state)
for year in year_list:
county_list = os.listdir(path+state+"\\"+year)
for county in county_list:
image_list = os.listdir(path+state+"\\"+year+"\\"+county)
for image in image_list:
path_old = path+state+"\\"+year+"\\"+county+"\\"+image
path_new = path_copies+state+"_"+year+"_"+county+"_"+image
shutil.copy(path_old, path_new)
Как я могу изменить свой файл именование режима в дальнейшем (например, от текущей state_year_county_image.jpg к year_state_county_image.jpg или в соответствии с некоторыми другой режим именования, который мне позже понадобится)? Я был бы открыт для принятия какого-либо другого соглашения об основных именованиях, если он позволяет больше гибкости, но я хотел бы, чтобы имена файлов отражали имена исходных папок.
Почему вы переименовывать файлы в первую очередь? Из вашего описания я предполагаю, что у вас действительно много изображений, их размещение в одной папке затруднит поиск файлов. Пока неясно, какая часть имени файла - это состояние, графство, год и т. Д., Нет проблем с последующим переименованием. Вы также должны рассмотреть использование программного обеспечения для управления фотографиями, где вы можете назначить метки изображениям. – Pyfisch