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