Python遍歷zip文件輸出名稱時出現(xiàn)亂碼問題的解決方法
本文實例講述了Python遍歷zip文件輸出名稱時出現(xiàn)亂碼問題的解決方法。分享給大家供大家參考。具體如下:
windows中使用python2.7遍歷zip文件之后輸出文件名等信息,console打印的中文及一些標點出現(xiàn)亂碼。查了一下網(wǎng)上說的windows的編碼為cp936,print()函數(shù)交給系統(tǒng)處理打印,所以要提前編碼成windows能夠識別的編碼。
這種print的亂碼也會出現(xiàn)在形如print(mylist)中(mylist是python的list類型變量,print(mylist[2])則不會亂碼,奇怪)
代碼如下:(.py文件中在文件頭先加 # -*- coding: UTF-8 –*-)
import zipfile
def listzipfilesinfo(path):
z=zipfile.ZipFile(path,'r')
try:
for filename in z.namelist():
bytes=z.read(filename)
print('File:%s Size:%s'%(unicode(filename, 'cp936').decode('utf-8'),len(bytes)))
finally:
z.close()
注:decode可以去掉
希望本文所述對大家的Python程序設計有所幫助。
相關文章
Python 十六進制整數(shù)與ASCii編碼字符串相互轉換方法
今天小編就為大家分享一篇Python 十六進制整數(shù)與ASCii編碼字符串相互轉換方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-07-07
python實現(xiàn)整數(shù)的二進制循環(huán)移位
這篇文章主要為大家詳細介紹了python實現(xiàn)整數(shù)的二進制循環(huán)移位,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-03-03

