2017-04-05 46 views

回答

1

這些可以在ISO 2022編解碼器下訪問。

>>> '亜'.encode('iso2022_jp') 
b'\x1b$B0!\x1b(B' 

如果我看到沒有被轉義序列陷害這些字節,我必須知道正在使用的JIS X 0208的版本,但我完全模式在這一點無論如何在維基百科上的匹配。

>>> b = b'\033$B' + bytes.fromhex('3021') 
>>> c = b.decode('iso2022_jp') 
>>> c 
'亜' 
>>> urllib.parse.quote(c) 
'%E4%BA%9C' 

(這是Python 3的)

+0

感謝您的溶液。我想知道你是否也可以提供Python 2解決方案。 – tlaminator

+0

另外我不太明白你是如何得到序列'b'\ 033 $ B'的。這個序列是否特定於此示例,或者您是否也可以將其用於其他JIS X 208代碼? – tlaminator

+0

這就是當我要求在iso2022_jp中進行編碼時Python給出的,更多內容在https://en.wikipedia.org/wiki/ISO/IEC_2022#ISO.2FIEC_2022_character_sets –