本文由 大侠(AhcaoZhu)原创,转载请声明。
链接: https://blog.csdn.net/Ahcao2008
一图看懂 zipfile 模块:处理压缩和解压缩文件, 资料整理+笔记(大全)
- 摘要
- 模块图
- 类关系图
- 模块全展开
-
- 【zipfile】
- 统计
- 常量
- 模块
- 函数
-
- 88 _strip_extra(extra, xids)
- 89 _check_zipfile(fp)
- 90 is_zipfile(filename)
- 91 _EndRecData64(fpin, offset, endrec)
- 92 _EndRecData(fpin)
- 93 _gen_crc(crc)
- 94 _ZipDecrypter(pwd)
- 95 _check_compression(compression)
- 96 _get_compressor(compress_type, compresslevel=None)
- 97 _get_decompressor(compress_type)
- 98 main(args=None)
- 类
-
- 99 zipfile.BadZipFile
- 100 zipfile.LargeZipFile
- 101 zipfile.BadZipFile
- 102 zipfile.BadZipFile
- 103 zipfile.ZipInfo
- 104 zipfile.LZMACompressor
- 105 zipfile.LZMADecompressor
- 106 zipfile._SharedFile
- 107 zipfile._Tellable
- 108 zipfile.ZipExtFile
- 109 zipfile._ZipWriteFile
- 110 zipfile.ZipFile
-
- data
- property
- method
- 3 close(self)
- 4 extract(self, member, path=None, pwd=None)
- 5 extractall(self, path=None, members=None, pwd=None)
- 6 getinfo(self, name)
- 7 infolist(self)
- 8 namelist(self)
- 9 open(self, name, mode="r", pwd=None, *, force_zip64=False)
- 10 printdir(self, file=None)
- 11 read(self, name, pwd=None)
- 12 setpassword(self, pwd)
- 13 testzip(self)
- 14 write(self, filename, arcname=None,
- 15 writestr(self, zinfo_or_arcname, data,
- 111 zipfile.PyZipFile
- 内嵌函数或方法
- 私有或局部
- 剩余
- 【io】
- 【os】
- 【importlib】
- 【sys】
- 【time】
- 【stat】
- 【shutil】
- 【struct】
- 【binascii】
- 【threading】
- 【zlib】
- 统计
- 常量
- 类
- 内嵌函数或方法
- 【bz2】
- 【lzma】
- 统计
- 常量
- 模块
- 函数
- 类
- 内嵌函数或方法
- 私有或局部
摘要
全文介绍系统内置 zipfile 模块、函数、类及类的方法和属性。
它通过代码抓取并经AI智能翻译和人工校对。
是一部不可多得的权威字典类工具书。它是系列集的一部分。后续陆续发布、敬请关注。【原创:AhcaoZhu大侠】
模块图
zipfile
◆io
◆os
◆importlib
◆sys
◆time
◆stat
◆shutil
◆struct
◆binascii
◆threading
zlib
bz2
lzma
类关系图
◆object
◆BaseException
◆Exception
_lzma.LZMAError
zipfile.BadZipFile
zipfile.LargeZipFile
zlib.error
◆_bz2.BZ2Compressor
◆_bz2.BZ2Decompressor
◆_io._IOBase
◆_io._BufferedIOBase
◆io.BufferedIOBase
◆_compression.BaseStream
bz2.BZ2File
lzma.LZMAFile
zipfile.ZipExtFile
zipfile._ZipWriteFile
_lzma.LZMACompressor
_lzma.LZMADecompressor
zipfile.LZMACompressor
zipfile.LZMADecompressor
zipfile.ZipFile
zipfile.PyZipFile
zipfile.ZipInfo
zipfile._SharedFile
zipfile._Tellable
模块全展开
【zipfile】
zipfile, fullname=zipfile, file=zipfile.py
读写ZIP文件。
XXX对utf-8的引用需要进一步调查。
统计
序号 | 类别 | 数量 |
---|---|---|
1 | int | 69 |
4 | str | 9 |
6 | list | 1 |
8 | dict | 2 |
9 | module | 13 |
10 | class | 13 |
11 | function | 11 |
12 | builtin_function_or_method | 1 |
13 | residual | 10 |
14 | system | 9 |
15 | private | 66 |
16 | all | 129 |
常量
int
1 ZIP64_LIMIT 2147483647
2 ZIP_FILECOUNT_LIMIT 65535
3 ZIP_MAX_COMMENT 65535
4 ZIP_STORED 0
5 ZIP_DEFLATED 8
6 ZIP_BZIP2 12
7 ZIP_LZMA 14
8 DEFAULT_VERSION 20
9 ZIP64_VERSION 45
10 BZIP2_VERSION 46
11 LZMA_VERSION 63
12 MAX_EXTRACT_VERSION 63
13 sizeEndCentDir 22
14 _ECD_SIGNATURE 0
15 _ECD_DISK_NUMBER 1
16 _ECD_DISK_START 2
17 _ECD_ENTRIES_THIS_DISK 3
18 _ECD_ENTRIES_TOTAL 4
19 _ECD_SIZE 5
20 _ECD_OFFSET 6
21 _ECD_COMMENT_SIZE 7
22 _ECD_COMMENT 8
23 _ECD_LOCATION 9
24 sizeCentralDir 46
25 _CD_SIGNATURE 0
26 _CD_CREATE_VERSION 1
27 _CD_CREATE_SYSTEM 2
28 _CD_EXTRACT_VERSION 3
29 _CD_EXTRACT_SYSTEM 4
30 _CD_FLAG_BITS 5
31 _CD_COMPRESS_TYPE 6
32 _CD_TIME 7
33 _CD_DATE 8
34 _CD_CRC 9
35 _CD_COMPRESSED_SIZE 10
36 _CD_UNCOMPRESSED_SIZE 11
37 _CD_FILENAME_LENGTH 12
38 _CD_EXTRA_FIELD_LENGTH 13
39 _CD_COMMENT_LENGTH 14
40 _CD_DISK_NUMBER_START 15
41 _CD_INTERNAL_FILE_ATTRIBUTES 16
42 _CD_EXTERNAL_FILE_ATTRIBUTES 17
43 _CD_LOCAL_HEADER_OFFSET 18
44 sizeFileHeader 30
45 _FH_SIGNATURE 0
46 _FH_EXTRACT_VERSION 1
47 _FH_EXTRACT_SYSTEM 2
48 _FH_GENERAL_PURPOSE_FLAG_BITS 3
49 _FH_COMPRESSION_METHOD 4
50 _FH_LAST_MOD_TIME 5
51 _FH_LAST_MOD_DATE 6
52 _FH_CRC 7
53 _FH_COMPRESSED_SIZE 8
54 _FH_UNCOMPRESSED_SIZE 9
55 _FH_FILENAME_LENGTH 10
56 _FH_EXTRA_FIELD_LENGTH 11
57 sizeEndCentDir64Locator 20
58 sizeEndCentDir64 56
59 _CD64_SIGNATURE 0
60 _CD64_DIRECTORY_RECSIZE 1
61 _CD64_CREATE_VERSION 2
62 _CD64_EXTRACT_VERSION 3
63 _CD64_DISK_NUMBER 4
64 _CD64_DISK_NUMBER_START 5
65 _CD64_NUMBER_ENTRIES_THIS_DISK 6
66 _CD64_NUMBER_ENTRIES_TOTAL 7
67 _CD64_DIRECTORY_SIZE 8
68 _CD64_OFFSET_START_CENTDIR 9
69 _DD_SIGNATURE 134695760
str
70 structCentralDir <4s4B4HL2L5H2L
71 structFileHeader <4s2B4HL2L2H
72 structEndArchive64Locator <4sLQL
73 structEndArchive64 <4sQ2H2L4Q
dict
74 compressor_names {0: ‘store’, 1: ‘shrink’, 2: ‘reduce’, 3: ‘reduce’, 4: ‘reduce’, 5: ‘reduce’, 6: ‘implode’, 7: ‘tokenize’, 8: ‘deflate’,…
模块
75 io
io, fullname=io, file=io.py
76 os
os, fullname=os, file=os.py
77 importlib
importlib, fullname=importlib, file=importlib_init_.py
导入的纯Python实现。
78 sys
sys, fullname=sys, file=
79 time
time, fullname=time, file=
80 stat
stat, fullname=stat, file=stat.py
81 shutil
shutil, fullname=shutil, file=shutil.py
82 struct
struct, fullname=struct, file=struct.py
83 binascii
binascii, fullname=binascii, file=
二进制数据和ASCII之间的转换
84 threading
threading, fullname=threading, file=threading.py
线程模块,模拟Java线程模型的子集。
85 zlib
zlib, fullname=zlib, file=
此模块中的函数允许使用基于GNU zip的zlib库进行压缩和解压缩。
adler32(string[, start]) -- 计算adler32校验和。
compress(data[, level]) -- 压缩数据,压缩级别为0-9或-1。
compressobj([level[, ...]]) -- 返回压缩对象。
crc32(string[, start]) -- 计算CRC-32校验和。
decompress(string,[wbits],[bufsize]) -- -解压缩字符串。
decompressobj([wbits[, zdict]]]) -- 返回一个解压器对象。
'wbits'是窗口缓冲区大小和容器格式。
压缩机对象支持compress()和flush()方法;
解压器对象支持decompress()和flush()。
86 bz2
bz2, fullname=bz2, file=bz2.py
到libbzip2压缩库的接口。
该模块提供了一个文件接口、用于增量压缩(解压缩)的类以及用于一次性压缩(解压缩)的函数。
87 lzma
lzma, fullname=lzma, file=lzma.py
到liblzma压缩库的接口。
这个模块提供了一个用于读写压缩文件的类,用于增量压缩(解压缩)的类,以及用于一次性压缩(解压缩)的方便函数。
这些类和函数同时支持XZ和遗留的LZMA容器格式,以及原始压缩数据流。
函数
88 _strip_extra(extra, xids)
_strip_extra(extra, xids), module=zipfile, line:166 at zipfile.py
89 _check_zipfile(fp)
_check_zipfile(fp), module=zipfile, line:185 at zipfile.py
90 is_zipfile(filename)
is_zipfile(filename), module=zipfile, line:193 at zipfile.py
通过检查magic数字,快速查看文件是否是ZIP文件。
filename参数也可以是一个文件或类文件对象。
91 _EndRecData64(fpin, offset, endrec)
_EndRecData64(fpin, offset, endrec), module=zipfile, line:209 at zipfile.py
读取ZIP64归档结束记录并使用它来更新endrec
92 _EndRecData(fpin)
_EndRecData(fpin), module=zipfile, line:252 at zipfile.py
从“中央目录终止符”记录返回数据或None。
数据是ZIP“End of central dir”中9项的列表
记录后面跟着第十项,该文件求该记录的偏移量。
93 _gen_crc(crc)
_gen_crc(crc), module=zipfile, line:550 at zipfile.py
94 _ZipDecrypter(pwd)
_ZipDecrypter(pwd), module=zipfile, line:566 at zipfile.py
95 _check_compression(compression)
_check_compression(compression), module=zipfile, line:675 at zipfile.py
96 _get_compressor(compress_type, compresslevel=None)
_get_compressor(compress_type, compresslevel=None), module=zipfile, line:694 at zipfile.py
97 _get_decompressor(compress_type)
_get_decompressor(compress_type), module=zipfile, line:710 at zipfile.py
98 main(args=None)
main(args=None), module=zipfile, line:2116 at zipfile.py
类
99 zipfile.BadZipFile
BadZipFile, zipfile.BadZipFile, module=zipfile, line:0 at
100 zipfile.LargeZipFile
LargeZipFile, zipfile.LargeZipFile, module=zipfile, line:0 at
在编写zip文件时引发,该zipfile需要ZIP64扩展名,而这些扩展名已被禁用。
101 zipfile.BadZipFile
BadZipFile, zipfile.BadZipFile, module=zipfile, line:0 at
102 zipfile.BadZipFile
BadZipFile, zipfile.BadZipFile, module=zipfile, line:0 at
103 zipfile.ZipInfo
ZipInfo, zipfile.ZipInfo, module=zipfile, line:0 at
类,其属性描述ZIP归档中的每个文件。
data
1 CRC=<member ‘CRC’ of ‘ZipInfo’ objects> kind:data type:member_descriptor class:<class ‘zipfile.ZipInfo’>
2 comment=<member ‘comment’ of ‘ZipInfo’ objects> kind:data type:member_descriptor class:<class ‘zipfile.ZipInfo’>
3 compress_size=<member ‘compress_size’ of ‘ZipInfo’ objects> kind:data type:member_descriptor class:<class ‘zipfile.ZipInfo’>
4 compress_type=<member ‘compress_type’ of ‘ZipInfo’ objects> kind:data type:member_descriptor class:<class ‘zipfile.ZipInfo’>
5 create_system=<member ‘create_system’ of ‘ZipInfo’ objects> kind:data type:member_descriptor class:<class ‘zipfile.ZipInfo’>
6 create_version=<member ‘create_version’ of ‘ZipInfo’ objects> kind:data type:member_descriptor class:<class ‘zipfile.ZipInfo’>