1、 将十六进制数转换为十进制
知识点补充:
1、字符串可被遍历和切片 ,但是不能使用del 、append等函数,需要使用时需转换为list
s='0xada67'
b=s.strip('0x')
print(b)
c=s.replace('0x','')
print(c)
d=c[::-1]
print(d)
返回:
ada67
ada67
76ada
for i ,j in enumerate(c):
print(i+j)
返回: TypeError: unsupported operand type(s) for +: 'int' and 'str'
枚举返回的是 index(是整型) + str(子字符串)
s='wewewe'
del s[4]
print(s[3])
返回:TypeError: 'str' object doesn't support item deletion
while True:
a=int(input().strip('0x')) #此处int错误,int()转换为10进制,此时输入
#的是十六进制 ,int(base,10) 将base转为10进制
s=list(a)[::-1] #此处list 没必要,因为字符串也可以被遍历
dict={'0':0,....'9':9,'A':10,...'F':15}
num=0
for i in a: #这样遍历错误,因为进制转换既需要index,还需要字符 如:8*16**2
for i,j in enumerate(a[::-1]):
num+=dict[j]*(16**i)
print(num)