Задать вопрос
@joker_4fun

Python.Как переименовать файл в зависимости от его размера?

Доброго времени суток!
На работе встал вопрос создания еженедельного отчета в excel, собранного из 5 разных excel файлов.
Проблема в том, что все 5 файлов, находятся в разных папках и имеют разное имя.
В каждой папке есть два файла. Условно "Поступившие.xls" и "Остатки.xls".
"Остатки.xls". - в каждой папке, всегда имеют больший размер. Допустим всегда больше 200кб

Как сделать так, что бы Питон прошелся по всем 5 папкам, и файлы размером больше 200кб переименовал допустим в 1.xls, а файлы меньше 200кб в 2.xls.

Заранее спасибо. Я только учусь Python

Upd: название 5 папок - статично
  • Вопрос задан
  • 824 просмотра
Подписаться 1 Простой 1 комментарий
Решения вопроса 1
Jossnix
@Jossnix
tester
import os

folder_paths = ['./']
dst_file1 = '1.xls'
dst_file2 = '2.xls'

for itemFolder in folder_paths:
    listFiles = os.listdir(itemFolder)
    for itemFiles in listFiles:
        if (itemFiles[-4:] == '.xls'):
            size_file = os.stat(itemFolder+'/'+itemFiles).st_size/1024
            if (size_file > 200):
                os.rename(itemFolder+'/'+itemFiles, itemFolder+'/'+dst_file1) 
            else:
                os.rename(itemFolder+'/'+itemFiles, itemFolder+'/'+dst_file2)


Если вообще в лоб

в folder_paths указать пути нужных папок ['./', './newFolder', './newFolder2']
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы