2011-02-13 86 views
3

我有希伯來語的數據,使得\ xe0是希伯來ALEPH, 並希望將其轉換爲UTF-8如何8位希伯來語轉換爲UTF-8在python

+0

你可能也想看看[是](http://stackoverflow.com/questions/368805/python-unicodedecodeerror-am-i-misunderstanding-encode/370199#370199)答案。此外,請注意,您的字符串最可能編碼爲「cp1255」(請參閱​​[此處](http://en.wikipedia.org/wiki/Windows-1255)),而不是`iso8859-8`。 – tzot 2011-03-06 21:59:13

回答

7

一般在Python中,如果您有一個字節字符串需要首先使用解碼將其轉換爲內部表示,然後您可以將其編碼爲UTF-8。當然,你需要知道的\xe0編碼這個工作(我假設你的性格是使用ISO-8859-8編碼):

'\xe0'.decode('iso-8859-8').encode('utf-8') 

編輯: 旁註:

確保儘可能在程序中使用內部表示。一般來說:先解碼(輸入時),最後解碼(輸出時)。

+1

如果不是Windows-1255,編碼可能是iso-8859-8。 – Mikel 2011-02-13 07:30:47

0

您可以使用「解碼」調用的unicode

y = x.decode('iso8859-8') 

改造它哪裏x是你的8位串並y是unicode字符串 那麼你可以使用它轉換爲UTF-8 encode通話

z = y.encode('utf-8')