压缩解压文件操作


def unzip_file(fname, dirs):
    import zipfile
    fz = zipfile.ZipFile(fname, 'r')
    #     for file in fz.namelist():
    #         print(file)
    #         fz.extract(file, dirs)
    fz.extractall(dirs)


def ungz_file(fname, dirs):
    t = tarfile.open(fname, "r:*")
    names = t.getnames()
    print(names)
    t.extractall(path=dirs)
    t.close()


def tar_gz(fname):
    """
    创建gz文件
    :param fname:
    :return:
    """
    import tarfile
    t = tarfile.open(fname + ".tar.gz", "w:gz")
    for root, dir_list, files in os.walk(fname):
        if not files:
            arc_name = root.replace(fname, "")
            t.add(root, arcname=arc_name)
        else:
            for file in files:
                arc_name = file.replace(fname, "")
                full_path = os.path.join(root, file)
                t.add(full_path, arcname=arc_name)
    t.close()


posted @ 2019-04-08 14:35  nanaindi  阅读(195)  评论(0编辑  收藏  举报