成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

python字符串用十六進制表示

瀏覽:84日期:2022-09-14 13:04:01

問題描述

我想將輸入的字符串用十六進制表示,首先聲明,并不是轉換成十六進制的字符串,而是像下面的反過程:

>>> ’x61x62x63x64’’abcd’

我嘗試了python3中的encode(’UTF-8’)等方法,但是都沒有找到怎樣可以達到我的目的,Python中是否能夠完成這個功能,如果可以,怎樣才能達到我的目的,希望各位大神能夠指教。

問題解答

回答1:

>>> ’x61x62x63x64’ == ’abcd’True

是沒有辦法打印出來’x61x62x63x64’的,如果只是想查看’a’對應的ascii數值,可以用ord()

>>> ord(’a’)97>>> chr(97)’a’

不知道這樣可不可以滿足你的要求

>>> [hex(ord(x)) for x in ’abcd’][’0x61’, ’0x62’, ’0x63’, ’0x64’]回答2:

python3

>>> print(’’.join((r’x%2x’%ord(c)for c in ’abcd’)))x61x62x63x64>>> print(’’.join((r’x%2x’%c for c in bytes(’abcd’,’l1’))))x61x62x63x64>>> print(’’.join((r’x%2x’%c for c in b’abcd’)))x61x62x63x64回答3:

binascii 庫里好幾個函數都可以做到

import binasciiprint(binascii.b2a_hex(b’abcd’))# b’61626364’

或者 py3.5 直接這樣寫

print(b’abcd’.hex())# 61626364

標簽: Python 編程
相關文章: