unicode/unicodebig/utf8 在python上預設情況下都解析不了window系統中
ascll對應的是gbk
unicode|unicodebigendian 對應 utf-16utf-8 對應 utf-8字串在python內部的表示是unicode編碼。
因此,在做編碼轉換時,通常需要以unicode作為中間編碼,即先將其他編碼的字串解碼(decode)成unicode,再從unicode編碼(encode)成另一種編碼。 decode的作用是將其他編碼的字串轉換成unicode編碼,如str1.decode(
'gb2312
'),表示將gb2312編碼的字串str1轉換成unicode編碼。 encode的作用是將unicode編碼轉換成其他編碼的字串,如str2.encode('
gb2312
'),表示將unicode編碼的字串str2轉換成gb2312編碼。
因此,轉碼的時候一定要先搞明白,字串
str是什麼編碼,然後decode成unicode,然後再encode成其他編碼
#!/usr/bin/env python
#coding=utf-8
s="中文"if
isinstance(s, unicode):
#s=u"中文"
print s.encode('
gb2312
')
else
: #
s="中文"
print s.decode('
utf-8
').encode('
gb2312
')
python中的字元編碼問題
總結python的字元編碼 應該在 最初兩行內包含 usr bin env python coding utf 8 獲得 設定系統的預設編碼 sys.getdefaultencoding sys.setdefaultencoding utf 8 獲得檔案系統的檔名的編碼 sys.getfilesys...
Python中的字元編碼問題
寫之前必須先吐槽一句,字元編碼問題真是讓人頭疼啊啊啊啊!這是美國標準資訊交換碼,用8位表示乙個字元,當然用這種方式表示所有的英文本母是完全夠用了,多餘的還能用來表示控制字元,標點符號等這些特殊字元。但是,當其他民族的語言也想被儲存到計算機中時,這種表示方式就完全不夠用了。非英語民族為了滿足自己的語言...
python中的字元編碼問題
ascii碼和字元之間的轉換 gbk2312 6700多漢字 gbk1.0 1995年推出,20000餘漢字 gbk18030 2000年推出,27000餘漢字 unicode 統一碼 萬國碼 單一碼 是電腦科學領域裡的一項業界標準,包括字符集 編碼方案等。unicode 是為了解決傳統的字元編碼方...