Python壓縮解壓zip文件


導入相關模塊

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

原文鏈接:https://blog.csdn.net/abcwanglinyong/article/details/80840813

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM