Много файлов в папке. Я хочу застегнуть их всех. Каждые 10 файлов будут добавлены в zip-файл.
import os, glob
import numpy as np
import zipfile
file_folder = "C:\\ABC\\DEF\\"
all_files = glob.glob(file_folder + "/*.*")
several_lists= np.array_split(all_files, 10)
for num, file_names in enumerate(several_lists):
ZipFile = zipfile.ZipFile(file_folder + str(num) + ".zip", "w" )
for f in file_names:
ZipFile.write(f, compress_type=zipfile.ZIP_DEFLATED)
ZipFile.close()
Сгенерированные zip-файлы содержат также пути, то есть каждый zip-файл имеет папку DEF в папке ABC. Сами файлы находятся в DEF.
Я изменил строку на:
ZipFile.write(os.path.basename(f), compress_type=zipfile.ZIP_DEFLATED)
Ошибка появляется для:
WindowsError: [Error 2] The system cannot find the file specified:
Как это исправить? Спасибо.
Кстати, есть большая разница в zip и rar файлах, созданных Python?