Python3 字符串与hex之间的相互转换
生活随笔
收集整理的這篇文章主要介紹了
Python3 字符串与hex之间的相互转换
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在字符串轉換上,python2和python3是不同的,在查看一些python2的腳本時候,總是遇到字符串與hex之間之間的轉換出現問題,記錄一下解決方法。
1. 在Python2.7.x上,hex字符串和bytes之間的轉換是這樣的:
>>> a = 'aabbccddeeff' >>> a_bytes = a.decode('hex') >>> print(a_bytes) b'\xaa\xbb\xcc\xdd\xee\xff' >>> aa = a_bytes.encode('hex') >>> print(aa) aabbccddeeff >>>2.在python 3環境上,因為string和bytes的實現發生了重大的變化,這個轉換也不能再用encode/decode完成,而是利用bytes.fromhex()進行轉換。
2.1 在python3.5之前,這個轉換的其中一種方式是這樣的,利用bytes.fromhex()加單個字符轉換
''' 遇到問題沒人解答?小編創建了一個Python學習交流QQ群:778463939 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學習教程和PDF電子書! ''' >>> a = 'aabbccddeeff' >>> a_bytes = bytes.fromhex(a) >>> print(a_bytes) b'\xaa\xbb\xcc\xdd\xee\xff' >>> aa = ''.join(['%02x' % b for b in a_bytes]) >>> print(aa) aabbccddeeff >>>2.2 到了python 3.5之后,直接用bytes.fromhex即可完成轉換
>>> a = 'aabbccddeeff' >>> a_bytes = bytes.fromhex(a) >>> print(a_bytes) b'\xaa\xbb\xcc\xdd\xee\xff' >>> aa = a_bytes.hex() >>> print(aa) aabbccddeeff >>>總結
以上是生活随笔為你收集整理的Python3 字符串与hex之间的相互转换的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python3接收、解析邮件
- 下一篇: Python 列表的应用场景有哪些?你使