您好,登錄后才能下訂單哦!
小編給大家分享一下Python3編碼中Unicode utf-8 bytes互轉的示例分析,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
為什么需要本文,因為在對接某些很老的接口的時候,需要傳遞過去的是16進制的hex字符串,并且要求對傳的字符串做編碼,這里就介紹了utf-8 Unicode bytes 等等。
#英文使用utf-8 轉換成16進制hex字符串的方法 newstr = 'asd' b_str = bytes(newstr,encoding='utf-8') print(b_str) hex_str = b_str.hex() #將bytes類型轉換成16進制的hex字符串 print(hex_str) #字節碼轉16進制hex的方法 print(bytes.fromhex(hex_str).decode('utf-8')) #將16進制hex字符串轉換成bytes,然后在轉換成字符串 print(type('中文'.encode('utf-8')),'中文'.encode('unicode_escape'),'中文123456'.encode('unicode_escape').decode('utf-8')) #中文轉換成Unicode的一種方法之一 u_str = '中文123456' b_str = bytes(u_str,encoding='unicode_escape') h_u_s = b_str.hex()print ("\u4e2d\u6587") #Unicode編碼可直接輸出 #中文使用Unicode轉換成bytes再轉換成16進制hex方法 包含英文和數字 u_cn = '中文asd123' hex_msg = bytes(u_cn,encoding='utf_16_be').hex() #這是特殊要求下最終的解決方案 #注意在Python3中已經沒有了直接將字符串變成bytes或者Unicode的方法了 #也就是說,在Python中 u'中文'已經不再奏效 #bytes轉str b_str = bytes('中文',encoding='utf-8') print(b_str.decode()) #直接輸出為普通字符串
以上是“Python3編碼中Unicode utf-8 bytes互轉的示例分析”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。