写在前面:最近在解析一个文件,需要得到变量的地址,但从文件中解析的是字符串类型的,最后我需要的是int类型的,所以就有了下面这段。
代码:
data_list = ['0x01','0x0A','0xAA','0xFFF']
for data_num in range(len(data_list)):
data_dec = 0 #10进制结果
power = len(data_list[data_num])-2 #幂次
for i in range(len(data_list[data_num][2:])):
#print(ord(i)-55)
power = power - 1
if(ord(data_list[data_num][i+2])>=48 and ord(data_list[data_num][i+2])<=57):
data_dec = data_dec + (ord(data_list[data_num][i+2]) - 48) * (16 ** power)
else:
data_dec = data_dec + (ord(data_list[data_num][i+2]) - 55) * (16 ** power)
print(data_dec)
执行结果
结尾:
其实最后输出的是10进制的内容,但是作为int类型使用完全满足要求.
注:本文不具备指导意义,仅是个人学习总结,如有不当之处希望大佬们多多指正