Python教程33:关于在使用zipfile模块,出现中文乱码的解决办法

zipfile是Python标准库中的一个模块,zipfile里有两个class, 分别是ZipFile和ZipInfo,用来创建和读取zip文件,而ZipInfo是存储的zip文件的每个文件的信息的。ZIP文件是一种常见的存档文件格式,它可以将多个文件和目录压缩为一个文件,以便于传输和存储。

#我的Python教程
#官方微信公众号:wdPython

Python教程33:关于在使用zipfile模块,出现中文乱码的解决办法_第1张图片

**1. 在使用zipfile模块,出现中文乱码的解决办法:**如下图
Python教程33:关于在使用zipfile模块,出现中文乱码的解决办法_第2张图片
可以在python安装目录下,找到lib文件夹下的zipfile.py文件。也可以在源码中选中zipfile+然后Ctrl+左键直接跳转打开zipfile.py文件。

然后使用快捷键Ctrl+F,查找定位一下cp437出现的位置及个数。

其次filename=…(‘cp437’)改为filename = …(‘GBK’)

最后保存zipfile.py文件即可。再去调试代码,就不会出现乱码了。
Python教程33:关于在使用zipfile模块,出现中文乱码的解决办法_第3张图片
2.测试一下,以下代码能否正常解析到压缩文件里面的内容。

import zipfile

# 打开zip文件
with zipfile.ZipFile('my_archive.zip', 'r') as myzip:
    # 获取文件信息列表
    myinfos = myzip.infolist()

# 输出文件信息
for myinfo in myinfos:
    print(myinfo.filename)  # 输出文件名

你可能感兴趣的:(我的Python教程,Python教程,python)