python tarfile模块基本使用

发布时间:2019-09-23 17:02:02编辑:auto阅读(1654)

    1.压缩一个文件夹下的所有文件

    #coding=utf8
    import os
    import tarfile
    
    __author__ = 'Administrator'
    
    def main():
        cwd = os.getcwd()
        tar = tarfile.open('test.tar','w:gz')
        for root ,dir,files in os.walk(cwd):
            for file in files:
                fullpath = os.path.join(root,file)
                tar.add(fullpath)
    
    if __name__=='__main__':
        main()

    2.解压缩一个tar包

    import tarfile
    tar = tarfile.open("sample.tar.gz")
    tar.extractall()
    tar.close()

    3.有选择的解压缩一个tar包

    import os
    import tarfile
    
    def py_files(members):
        for tarinfo in members:
            if os.path.splitext(tarinfo.name)[1] == ".py":
                yield tarinfo
    
    tar = tarfile.open("sample.tar.gz")
    tar.extractall(members=py_files(tar))
    tar.close()

    参考资料:

    https://docs.python.org/2/library/tarfile.html

关键字