Versi Python yang saya gunakan ialah 3.5.2
,尝试用zipfile
模块的zipfile.ZipFile.open
方法打开一个压缩包中的文本文件时,即使使用了文档中要求的rU
parameter, dan ia masih dibuka dalam format data binari apabila ia dibuka, yang membingungkan.
Kod:
>>> import zipfile
>>> zf = zipfile.ZipFile('/Users/chiqingjun/Downloads/top-1m.csv.zip')
>>> zf.namelist()
['top-1m.csv']
>>> f = zf.open(zf.namelist()[0], mode='rU')
>>> f
<zipfile.ZipExtFile name='top-1m.csv' mode='rU' compress_type=deflate>
>>> f.readline()
b'1,google.com\n'
# 仍然是二进制数据
Dokumentasi rasmi (versi 3.5.2):
Sebenarnya, output binari akhir berkaitan dengan
zipfile
无关, 是和py3.5
Anda boleh menyahkod hasil output untuk mendapatkan jenis aksaraDokumentasi telah berkata,
rU
是通用换行符
, dan mod ini akan dialih keluar dalam 3.6.Perlu membaca kandungan bait fail yang dimampatkan dalam binari Cara transkod kemudian ditentukan oleh pengaturcara.