python解压文件夹
Ⅰ 怎么压缩用python写的游戏的文件大小或者用什么开发库
你可以尝试以下方法:
建立虚拟环境,减少Python打包额外的第三方库
使用upx和pyinstaller进行压缩
使用upx和nuitka进行压缩
这几种方法网上可以找到很多教程,都能够在一定程度上减小打包出来的文件大小,但是因为Python的解释型语言,除了使用nuitka编译成exe以外,其它的压缩方法作用一般不大,但是使用nuitka编译后的文件也会有较大的体积。
Ⅱ 如何使用python将已有文件夹压缩成一个zip文件
importos,os.path
importzipfile
defzip_dir(dirname,zipfilename):
filelist=[]
ifos.path.isfile(dirname):
filelist.append(dirname)
else:
forroot,dirs,filesinos.walk(dirname):
fornameinfiles:
filelist.append(os.path.join(root,name))
zf=zipfile.ZipFile(zipfilename,"w",zipfile.zlib.DEFLATED)
fortarinfilelist:
arcname=tar[len(dirname):]
#printarcname
zf.write(tar,arcname)
zf.close()
Ⅲ python怎样压缩和解压缩ZIP文件
1、python使用zipfile模块压缩和解压ZIP文件
2、读取zip文件
首先,通过zipfile模块打开指定zip文件,如:
zpfd
=
zipfile.ZipFile(path,
mode='r')
对于zipfile,其标志与open所用的打开文件标志有所不同,不能识别
'rb'。
然后,读取zip文件中的内容,zipfile对象提供一个read(name)的方法,name为zip文件中的一个文件入口,执行完成之后,将返回读出的内容,如:
for
filename
in
zpfd.namelist():
tmpcont
=
zpfd.read(filename)
print
'len(tmpcont)',
'tmpcont'
需要注意的是,读取zip文件时,只能读取内容!
Ⅳ python怎样压缩和解压缩ZIP文件(转)
榭梢越�姓庋�牟僮鳌2还� Python 中的 zipfile 模块不能处理多卷的情况,不过这种情况并不多见,因此在通常情况下已经足够使用了。下面我只是对一些基本的 zipfile 操作进行了记录,足以应付大部分的情况了。zipfile 模块可以让你打开或写入一个 zip 文件。比如:import zipfilez = zipfile.ZipFile('zipfilename', mode='r') 这样就打开了一个 zip 文件,如果mode为'w'或'a'则表示要写入一个 zip 文件。如果是写入,则还可以跟上第三个参数: compression=zipfile.ZIP_DEFLATED 或 compression=zipfile.ZIP_STORED ZIP_DEFLATED是压缩标志,如果使用它需要编译了zlib模块。而后一个只是用zip进行打包,并不压缩。在打开了zip文件之后就可以根据需要是读出zip文件的内容还是将内容保存到 zip 文件中。读出zip中的内容很简单,zipfile 对象提供了一个read(name)的方法。name为 zip文件中的一个文件入口,执行完成之后,将返回读出的内容,你把它保存到想到的文件中即可。写入zip文件有两种方式,一种是直接写入一个已经存在的文件,另一种是写入一个字符串。对 于第一种使用 zipfile 对象的 write(filename, arcname, compress_type),后两个参数是可以忽略的。第一个参数是文件名,第二个参数是表示在 zip 文件中的名字,如果没有给出,表示使用与filename一样的名字。compress_type是压缩标志,它可以覆盖创建 zipfile 时的参数。第二种是使用 zipfile 对象的 writestr(zinfo_or_arcname, bytes),第一个参数是zipinfo 对象或写到压缩文件中的压缩名,第二个参数是字符串。使用这个方法可以动态的组织文件的内容。类源码为:[python] view plain# coding:cp936 # Zfile.py # xxteach.com import zipfile import os.path import os class ZFile(object): def __init__(self, filename, mode='r', basedir=''): self.filename = filename self.mode = mode if self.mode in ('w', 'a'): self.zfile = zipfile.ZipFile(filename, self.mode, compression=zipfile.ZIP_DEFLATED) else: self.zfile = zipfile.ZipFile(filename, self.mode) self.basedir = basedir if not self.basedir: self.basedir = os.path.dirname(filename) def addfile(self, path, arcname=None): path = path.replace('//', '/') if not arcname: if path.startswith(self.basedir): arcname = path[len(self.basedir):] else: arcname = '' self.zfile.write(path, arcname) def addfiles(self, paths): for path in paths: if isinstance(path, tuple): self.addfile(*path) else: self.addfile(path) def close(self): self.zfile.close() def extract_to(self, path): for p in self.zfile.namelist(): self.extract(p, path) def extract(self, filename, path): if not filename.endswith('/'): f = os.path.join(path, filename) dir = os.path.dirname(f) if not os.path.exists(dir): os.makedirs(dir) file(f, 'wb').write(self.zfile.read(filename)) def create(zfile, files): z = ZFile(zfile, 'w') z.addfiles(files) z.close() def extract(zfile, path): z = ZFile(zfile) z.extract_to(path) z.close()
Ⅳ python 中如何压缩文件,并指定文件的压缩之后的大小。
这个简单啊。你先压缩成一个ZIP文件。比如 example.zip
然后用python将它分割成,5个文件。e1,e2,e3,e4,e5
邮件发出去后,对方收到邮件,另存附件,然后在目录下运行
e1+e2+e3+e4+e5 example.zip
此时windows就将依次将5个文件复制到同一个文件里去。
Ⅵ python 解压缩tar.gz文件 判断文件是否正常
Python自带的tarfile模块可以方便读取tar归档文件,牛b的是可以处理使用gzip和bz2压缩归档文件tar.gz和tar.bz2。
对于gz格式gz文件一般不加密常见的是这种.tar.gz格式的 对于tar格式 在python标准库我没找到关于检测加密的方法
Ⅶ 如何通过Python压缩解压缩zip文件
解压缩
importzipfile
importos
defun_zip(file_name):
"""unzipzipfile"""
zip_file=zipfile.ZipFile(file_name)
ifos.path.isdir(file_name+"_files"):
pass
else:
os.mkdir(file_name+"_files")
fornamesinzip_file.namelist():
zip_file.extract(names,file_name+"_files/")
zip_file.close()
打包
zipfile.ZipFile('xxx.zip','a/w/x').write('xxx.txt')
'w'以截断并写入新文件'a'以附加到现有文件,或'x'以专门创建和写入新文件。
Ⅷ Python如何将文件里的文件解压并输出
"""
"""
importzipfile
package=zipfile.ZipFile(r"dbpackages.zip")
forfinpackage.namelist():
iff.endswith(".db"):
printf
package.extract(package.getinfo(f))
Ⅸ 如何通过python代码解压zip包
defunzip_file(zip_src,dst_dir):
r=zipfile.is_zipfile(zip_src)
ifr:
fz=zipfile.ZipFile(zip_src,'r')
forfileinfz.namelist():
fz.extract(file,dst_dir)
else:
print('Thisisnotzip')
#zip_src:是zip文件的全路径
#dst_dir:是要解压到的目的文件夹
以上代码是Python3中的实现方式,谢谢