问题描述
从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出。
注:十六进制数中的10~15分别用大写的英文字母A、B、C、D、E、F表示。
参考代码
n = int(input(), 16)
print(n)
考察知识点
int 可以将 2 进制到 36 进制的字符串、字节串(bytes)或者字节数组(bytearray)实例转换成对应的 10 进制整数。具体的调用形式为:int(x, base=10),其中 x 即为字符串、字节串或字节数组的实例。ase 默认是 10,还可以取 0 以及 2 到 36,不能是 1,因为没有 1 进制。
base 为 0 的时候会按照代码字面量(code literal)解析,即只能把 2、8、10、16 进制数字表示转换为 10 进制。对于 2、8、16 进制必须指明相应进制的前缀,否则会按照 10 进制解析。
关于int函数的详细用法可以参考Python 中 int 用法详解