-2
這個問題說明了一切。我正在尋找一個可壓縮一個文件夾的循環,然後將創建的壓縮文件進行x次壓縮。我真的不知道該怎麼做,但我環顧四周,發現zipfile
模塊,我不知道如何使用它。如何創建一個循環,將壓縮文件夾,然後壓縮文件夾「x」的時間量,Python 3.4?
這個問題說明了一切。我正在尋找一個可壓縮一個文件夾的循環,然後將創建的壓縮文件進行x次壓縮。我真的不知道該怎麼做,但我環顧四周,發現zipfile
模塊,我不知道如何使用它。如何創建一個循環,將壓縮文件夾,然後壓縮文件夾「x」的時間量,Python 3.4?
import zipfile
import os
dir_to_zip = "test_dir"
zip_file_name = "myzipfile.zip"
tempfile = "myzipfile.zip.tmp"
X = 2
# Create the first zipfile
z = zipfile.ZipFile(zip_file_name, "w")
z.write(dir_to_zip)
for dirpath, dirnames, filenames in os.walk(dir_to_zip):
for filename in filenames:
z.write(os.path.join(dirpath, filename))
z.close()
for _i in range(X):
# Create the new zipfile as a temp file
z = zipfile.ZipFile(tempfile, "w")
z.write(zip_file_name)
z.close()
# Now remove the old zip file, replacing it with the new
os.remove(zip_file_name)
os.rename(tempfile, zip_file_name)
編輯:現在測試和工作。 編輯2:這將教我不要打開100個zip文件 - 更改爲2以上,使健康測試更容易:-)
工程!但你忘了在開始時輸入'os'。謝謝 – Callum
謝謝,我只是測試它,發現相同的東西!找到'故意的'錯誤很好! –
它似乎沒有保留原始文件夾的內容,並將整個目錄從「C:」拉到任何地方。 – Callum