python:接受一个十六进制的数,输出该数值的十进制表示。(多组同时输入 )

while True:
    try:
        a = input()
        if '0x' in a or '0X' in a:
            numbs = a.strip().upper().split("0X")[1]
            num_li = list(numbs)
            num_li.reverse()
            a_shi = 0
            for ind in range(len(num_li)):
                va = num_li[ind]
                if va == 'A':
                    va = 10
                elif va == 'B':
                    va = 11
                elif va == 'C':
                    va = 12
                elif va == 'D':
                    va = 13
                elif va == 'E':
                    va = 14
                elif va == 'F':
                    va = 15
                va = int(va)
                a_shi = a_shi+(16**ind)*va
            print(a_shi)
    except:
        break