用python解压图片并打印代码

用python解压图片并打印代码,第1张

import zipfile

# 传入压缩文件zfilezip获取相关信息

zip_file = zipfileZipFile('zfilezip')

# 获取压缩文件中的内容

f_content = zip_filenamelist()

# 压缩前的大小

f_size = zip_filegetinfo('zfile/atxt')file_size

# 压缩后的大小

c_size = zip_filegetinfo('zfile/atxt')compress_size

ZipFile 对象有一个 namelist()方法,返回 ZIP 文件中包含的所有文件和文件夹 的字符串的列表。这些字符串可以传递给 ZipFile 对象的 getinfo()方法,返回一个关 于特定文件的 ZipInfo 对象。ZipInfo 对象有自己的属性,诸如表示字节数的 file_size 和 compress_size,它们分别表示原来文件大小和压缩后文件大小。ZipFile 对象表示 整个归档文件,而 ZipInfo 对象则保存该归档文件中每个文件的有用信息。

从 ZIP 文件中解压缩

ZipFile 对象的 extractall()方法从 ZIP 文件中解压缩所有文件和文件夹,放到当 前工作目录中。

import zipfile

zip_file = zipfileZipFile('zfilezip')

# 解压

zip_extract = zip_fileextractall()

zip_extractclose()

运行这段代码后, examplezip 的内容将被解压缩到 C:\。 或者, 你可以向 extractall()传递的一个文件夹名称,它将文件解压缩到那个文件夹,而不是当前工作 目录。如果传递给 extractall()方法的文件夹不存在,它会被创建。例如,如果你用 exampleZipextractall('C:\ delicious')取代处的调用,代码就会从 examplezip 中解压 缩文件,放到新创建的 C:\delicious 文件夹中。

ZipFile 对象的 extract()方法从 ZIP 文件中解压缩单个文件。

创建和添加到 ZIP 文件

要创建你自己的压缩 ZIP 文件,必须以“写模式”打开 ZipFile 对象,即传入'w' 作为第二个参数(这类似于向 open()函数传入'w',以写模式打开一个文本文件)。

如果向 ZipFile 对象的 write()方法传入一个路径,Python 就会压缩该路径所指 的文件,将它加到 ZIP 文件中。write()方法的第一个参数是一个字符串,代表要添 加的文件名。第二个参数是“压缩类型”参数,它告诉计算机使用怎样的算法来压 缩文件。可以总是将这个值设置为 zipfileZIP_DEFLATED(这指定了 deflate 压缩 算法,它对各种类型的数据都很有效)。

import zipfile

zip_file = zipfileZipFile('newzip','w')

# 把zfile整个目录下所有内容,压缩为newzip文件

zip_filewrite('zfile',compress_type=zipfileZIP_DEFLATED)

# 把ctxt文件压缩成一个压缩文件

# zip_filewrite('ctxt',compress_type=zipfileZIP_DEFLATED)

zip_fileclose()

这段代码将创建一个新的 ZIP 文件,名为 newzip,它包含 spamtxt 压缩后的内容。

要记住,就像写入文件一样,写模式将擦除 ZIP 文件中所有原有的内容。如果 只是希望将文件添加到原有的 ZIP 文件中,就要向 zipfileZipFile()传入'a'作为第二 个参数,以追加模式打开 ZIP 文件。

"""an example for usage zipfile to find file and extract

"""

import zipfile

package = zipfileZipFile(r"dbpackageszip")

for f in packagenamelist():

    if fendswith("db"):

        print f

        packageextract(packagegetinfo(f))

import subprocess

import zipfile as zf

import platform as pf

import os

class ZipObj():

def __init__(self, filepathname, passwd,tip_path):

selffilepathname = filepathname #文件名

selfpasswd = passwd #压缩密码

selfTip_Path = tip_path #注释

def enCrypt(self, deleteSource=False):

# """

# 压缩加密,并删除原数据

# window系统调用rar程序

#

# linux等其他系统调用内置命令 zip -P123 tar source

# 默认不删除原文件

# """

target = "bzip"

source = selffilepathname

if pfsystem() == "Windows":

# rar a -p">

# -- coding: utf-8 --

#!/usr/bin/env python

import docx

import zipfile

from StringIO import StringIO

from processing_unitsxml_processing_unit import XmlProcessingUnit

import doc_utils

if __name__ == '__main__':

m = docxopendocx('e:/testdocx')

p = XmlProcessingUnit('docx')

process = pprocess(m)

zfile = zipfileZipFile('e:/testdocx')

out_docx_file = StringIO()

doc_utilssave_docx(zfile, process, out_docx_file)

out_txt_file = StringIO()

doc_utilsdocx_to_txt(out_docx_file, out_txt_file)

'''

out_file = StringIO()

with zipfileZipFile(out_file, 'w', compression=zipfileZIP_DEFLATED) as f:

fwritestr('test123docx', out_docx_filegetvalue())

#fwritestr('%stxt' % out_file, out_txt_filegetvalue())

'''

zfile2 = zipfileZipFile('e:/testzip', 'w', zipfileZIP_DEFLATED)

zfile2writestr('testdocx', out_docx_filegetvalue())

#zfile2writestr('testtxt', out_txt_filegetvalue())

#result = out_filegetvalue()

#print result

out_docx_fileclose()

out_txt_fileclose()

#out_fileclose()

中间缺少一个函数,这个自己找吧

#!/usr/bin/env python3

import os,zipfile

def Zip(target_dir):

target_file=ospathbasename(osgetcwd())+'zip'

zip_opt=input("Will you zip all the files in this dir(Choose 'n' you should add files by hand)y/n: ")

while True:

if zip_opt=='y': #compress all the files in this dir

filenames=oslistdir(osgetcwd()) #get the file-list of this dir

zipfiles=zipfileZipFile(ospathjoin(target_dir,target_file),'w',compression=zipfileZIP_DEFLATED)

for files in filenames:

zipfileswrite(files)

zipfilesclose()

print("Zip finished!")

break

elif zip_opt=='n': #compress part of files of this dir

filenames=list(input("Please input the files' name you wanna zip:"))

zipfiles=zipfileZipFile(ospathjoin(target_dir,target_file),'w',compression=zipfileZIP_DEFLATED)

for files in filenames:

zipfileswrite(files)

zipfilesclose()

print("Zip finished!")

break

else:

print("Please in put the character 'y' or 'n'")

zip_opt=input("Will you zip all the files in this dir(Choose 'n' you should add files by hand)y/n: ")

def Unzip(target_dir):

target_name=input("Please input the file you wanna unzip:")

zipfiles=zipfileZipFile(target_name,'r')

zipfilesextractall(ospathjoin(target_dir,ospathsplitext(target_name)[0]))

zipfilesclose()

print("Unzip finished!")

def main():

opt=input("What are you gonna doZip choose 'y',unzip choose 'n'y/n: ")

while True:

if opt=='y': #compress files

zip_dir=input("Please input the absdir you wanna put the zip file in:")

Zip(zip_dir)

break

elif opt=='n': #unzip files

unzip_dir=input("Please input the absdir you wanna put the zip file in(Nothing should be done if you wann unzip files in the current dir):")

if unzip_dir=='':

Unzip(osgetcwd())

else:

Unzip(unzip_dir)

break

else:

print("Please input the character 'y' or 'n'")

opt=input("What are you gonna doZip choose 'y',unzip choose 'n'y/n: ")

if __name__=='__main__':

main()

解压和压缩都有,自己稍微改改解压的文件名就行了

以上就是关于用python解压图片并打印代码全部的内容,包括:用python解压图片并打印代码、Python如何将文件里的文件解压并输出、python自动化全程班解压等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10212178.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存