0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【Python】複数のフォルダを全てZIP形式に圧縮・解凍する方法

Last updated at Posted at 2021-02-01

Title.gif

はじめに

カレントディレクトリにあるフォルダを全てをZIP形式に圧縮または全てのZIPフォルダを解凍するコードを共有して残したいと思ったので記事にしました。

実装

Python 3.9.1

ZIP形式にフォルダを圧縮

以下のコードを実行することでカレントディレクトリにあるフォルダを全てZIP形式に圧縮することができます。

compress_ZIP_folder.py
from shutil import make_archive
import os

path = './'

files = os.listdir(path)
folders_list = [f for f in files if os.path.isdir(os.path.join(path, f))]

# フォルダ内のZIPフォルダを全て圧縮する
for folder in  folders_list:
    make_archive(folder, 'zip', root_dir=folder)

ZIPフォルダを解凍

以下のコードを実行することでカレントディレクトリにあるZIPフォルダを全て解凍することができます。

unzip_the_ZIP_folder.py
from shutil import unpack_archive
import glob

path = './*.zip'

zip_folders_list = glob.glob(path)

# フォルダ内のZIPフォルダを全て解凍する
for folder in zip_folders_list:
    unpack_archive(folder, format='zip')

終わりに

複数のフォルダを圧縮・解凍する機会はなかなかないと思いますが、作業効率化にお役に立てれば嬉しいです。

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?