python 字符串轉16進制函數


需要用python處理16進制的文本,比如像下面這個文本

40 80 C0 40 80 C0 40 80 C0 40 80 C0 40 BF CC 40 80 C0 40 80 C0 40 80 C0 40 80 C0 41 BF CC 40 80 C0

剛學python,很多函數不清楚,不知道庫里有沒有可用的函數,於是自己寫了一個。

def str2hex(s):
    odata = 0;
    su =s.upper()
    for c in su:
        tmp=ord(c)
        if tmp <= ord('9') :
            odata = odata << 4
            odata += tmp - ord('0')
        elif ord('A') <= tmp <= ord('F'):
            odata = odata << 4
            odata += tmp - ord('A') + 10
    return odata

 

 以下是測試結果

data = str2hex('ABCD')
print(str(data))
print(hex(data))
#打印輸出
43981
0xabcd


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM