导入模块¶
GzipFile对象¶
gzip.GzipFile(filename=None, mode=None, compresslevel=9, fileobj=None, mtime=None)
-
filename:一个实际的文件名(一个
str对象或者bytes对象),或者是一个用来读写的已存在的文件对象 -
mode:只能是二进制模式
with gzip.GzipFile("NC_1.fastq.gz", "rb") as file:
print(file.readline())
print(file.readline())
print(file.readline())
print(file.readline())
"""
b'@A00917:294:HC5KJDSXY:2:1101:2700:1689\n'
b'TTGAGAGGCTGAGGCAGGAGGATCACTGGGGCCCAGGAGGTTGAGCCTACAATGAGTTATGATCATGCCACTGCACTCCAGCCTGAGTAACAAAGTGAGACCTTGTGTCTTAAAAAAACAAAAACCACTAAAATAGCAACAAGAGCAGTA\n'
b'+\n'
b'FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF:FFFFFFF:FFF\n
"""
函数¶
open¶
gzip.open(filename, mode='rb', compresslevel=9, encoding=None, errors=None, newline=None)
以二进制方式或者**文本方式**打开一个 gzip 格式的压缩文件,返回一个 file object
二进制模式:gzip.open(filename, mode='rb')等价于gzip.GzipFile(filename=None, mode=None)
文本模式:相当于file.open()下的文本模式
-
filename:一个实际的文件名(一个
str对象或者bytes对象),或者是一个用来读写的已存在的文件对象 -
mode:默认值是 'rb'
-
二进制模式:'r', 'rb', 'a', 'ab', 'w', 'wb', 'x' 或 'xb'
-
文本模式:'rt', 'at', 'wt', 或 'xt'
-
compresslevel:同上
-
encoding:同
file.open(),仅用于文本模式 -
errors:同
file.open(),仅用于文本模式 -
newline:同
file.open(),仅用于文本模式
with gzip.open("NC_1.fastq.gz", "rt") as file:
print(file.readline())
print(file.readline())
print(file.readline())
print(file.readline())
"""
@A00917:294:HC5KJDSXY:2:1101:2700:1689
TTGAGAGGCTGAGGCAGGAGGATCACTGGGGCCCAGGAGGTTGAGCCTACAATGAGTTATGATCATGCCACTGCACTCCAGCCTGAGTAACAAAGTGAGACCTTGTGTCTTAAAAAAACAAAAACCACTAAAATAGCAACAAGAGCAGTA
+
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF:FFFFFFF:FFF
"""
compress¶
gzip.compress(data, compresslevel=9, *, mtime=None)
压缩 data(必须是bytes对象),返回一个包含已压缩数据的 bytes 对象
a = gzip.compress(b"ATTTTCCCGGCTCGCT")
print(a)
"""
b'\x1f\x8b\x08\x00\x82\x9a!g\x02\xffs\x0c\x01\x02gggww\xe7\x10g \x06\x00\x85]\x14\xd0\x10\x00\x00\x00'
"""
decompress¶
gzip.decompress(data)
解压缩 data(必须是bytes对象),返回一个包含已解压数据的 bytes 对象
a = gzip.decompress(b'\x1f\x8b\x08\x00\x82\x9a!g\x02\xffs\x0c\x01\x02gggww\xe7\x10g \x06\x00\x85]\x14\xd0\x10\x00\x00\x00')
print(a)
"""
b'ATTTTCCCGGCTCGCT'
"""
