2017-05-03 69 views
-1

我試圖爲字符串打印unicode字符。 例如,「{」應打印爲「007B」(用前導零)爲字符串打印unicode十六進制值

我只能在此刻做的是這樣的:

binascii.hexlify(unicode("{")) 
'7b' 

我希望能夠給它一個字符串像「測試」,它應打印「0074006500730074」

+0

這有什麼錯了'hex'內置的功能? –

+0

Unicode函數具有附加'編碼'參數。試試這個 –

+0

可能重複[以十六進制字節打印字符串?](http://stackoverflow.com/questions/12214801/print-a-string-as-hex-bytes) –

回答

0

使用字符串格式化:

>>> string = 'test' 
>>> ''.join(["{:04x}".format(ord(c)) for c in string]) 
'0074006500730074' 
>>> 
0

試試這個:

character = ... 

uni_string = hex(ord(character))[2:].zfill(4) 

這得到了Unicode數字,轉換爲十六進制的LOP掉前兩個字符,然後墊串用零的最大長度是4

相關問題