Python圧縮解凍zipファイル
1950 ワード
関連モジュールのインポート
内
二、python解凍zip
次のようになります.
三、Pythonその他の操作ファイル方法
1.指定したディレクトリへのファイルの切り取り(移動)
2.フォルダの削除
3.指定ファイルの削除
4.新規フォルダ
5.フォルダを巡回
6.ファイルのコピー
7.フォルダサイズの取得
次のように、ファイルのサイズによって判断できます.
詳細は私のブログWang's Blogを参照してください
import os
import shutil
import zipfile
from os.path import join, getsize
一、python圧縮指定フォルダdef zip_file(src_dir):
zip_name = src_dir +'.zip'
z = zipfile.ZipFile(zip_name,'w',zipfile.ZIP_DEFLATED)
for dirpath, dirnames, filenames in os.walk(src_dir):
fpath = dirpath.replace(src_dir,'')
fpath = fpath and fpath + os.sep or ''
for filename in filenames:
z.write(os.path.join(dirpath, filename),fpath+filename)
print ('== ==')
z.close()
内
src_dir:
zip_name: zip
二、python解凍zip
def unzip_file(zip_src, dst_dir):
r = zipfile.is_zipfile(zip_src)
if r:
fz = zipfile.ZipFile(zip_src, 'r')
for file in fz.namelist():
fz.extract(file, dst_dir)
else:
print('This is not zip')
次のようになります.
zip_src: zip
dst_dir:
三、Pythonその他の操作ファイル方法
1.指定したディレクトリへのファイルの切り取り(移動)
shutil.move(filename, dst_dir)
2.フォルダの削除
shutil.rmtree(src_dir)
3.指定ファイルの削除
os.remove(file_src)
4.新規フォルダ
os.mkdir(dst_dir)
5.フォルダを巡回
for filename in os.listdir(src_dir):
6.ファイルのコピー
shutil.copyfile(src_file,dst_file)
7.フォルダサイズの取得
def get_dir_size(dir_path):
size = 0L
for root, dirs, files in os.walk(dir_path):
size += sum([getsize(join(root, name)) for name in files])
return size
次のように、ファイルのサイズによって判断できます.
file_size = get_dir_size(DATA_PATH)
max_size = file_size / 1024 / 1024 ## Mb
if max_size < 100:
pass
詳細は私のブログWang's Blogを参照してください