Python——gzip(待完善)

'''
解压单个文件夹的单个.gz文件
'''
#! /bin/env python3
import gzip

def un_gz(filename):
    #获取文件名称,去掉后缀名
    f_name = filename.replace(".gz","")
    #开始解压
    g_file = gzip.GzipFile(filename)
    #读取解压后的文件,并写入去掉后缀名的同名文件(即得到解压后的文件)
    open(f_name,"wb+").write(g_file.read())
    g_file.close()

un_gz('path') #单个文件夹中某一个压缩文件的地址

'''
解压某个文件夹下的所有.gz文件
'''
'''
#path = ''
def process_dataset(path):
    if os.path.exists(path):
        # os.system('cd path')
        # path = os.getcwd()
        dirs = os.listdir(path)
        # print(dirs) ['.gz','.gz','.gz'......]
        for dir in dirs:
            if '.gz' in dir:
                # print(dir)   ['.gz']
                filename = dir.replace(".gz","")
                gzip_file = gzip.GzipFile(path+dir)
                # print(gzip_file)  <...>
                # print(filename)   .ent .ent.gz
                with open(path+filename,'wb+') as f:
                    f.write(gzip_file.read())

if __name__ == '__main__':
    process_dataset(path='')
'''
import glob
import os
import gzip

path='/home/yhm/D-protein/pdb'
file_lst=glob.glob(path+'/*')
filename_lst=[os.path.basename(i) for i in file_lst]
print(filename_lst)
#! /bin/env python3
import os
import gzip
path ='/home/yhm/D-protein/pdb'                     #包含压缩文件的文件夹路径
files = os.listdir(path)                            #通过os读入一系列文件夹
for filename in files:                              #循环读入一系列文件夹
    if '.gz' in filename:                           #如果'.gz'存在于文件夹中
        print('.gz')
    def un_gz(filename):                            #定义解压文件的函数
        f_name = filename.replace(".gz","")
        g_file = gzip.GzipFile(filename)
        open(f_name,"wb+").write(g_file,read())
        g_file.close()
    un_gz()    
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值