将十六进制字符串转换为十进制的 Python 程序

pythonserver side programmingprogramming更新于 2024/1/17 15:32:00

在本文中,我们将了解下面给出的问题陈述的解决方案。

问题陈述 − 我们得到一个十六进制字符串,我们需要将其转换为其十进制等价物。

我们有两种方法可以解决问题−

  • 强力方法
  • 使用内置模块

强力方法

在这里我们借助显式类型转换函数,即整数。此函数接受两个参数,即十六进制等价物和基数,即 (16)。此函数用于将十六进制字符串转换为整数类型的等效十进制数,然后可以进一步将其类型转换回字符串格式。

示例

#input string
string = 'F'
# 将十六进制字符串转换为十进制
res = int(string, 16)
# 打印结果
print("与十六进制字符串关联的十进制数为:" + str(res))

输出

与十六进制字符串关联的十进制数为:15

使用内置“ast”模块

这里我们使用 ast 模块中的 literal_eval 函数,我们可以预测给定十六进制等值的基数,然后将其转换为十进制等值。这里我们使用了文字求值的概念。

示例

# 使用内置模块 literal_eval
from ast import literal_eval
# 初始化字符串
test_string = '0xF'
# 将十六进制字符串转换为十进制
res = literal_eval(test_string)
# 打印结果
print("十六进制字符串的十进制数为:" + str(res))

输出

十六进制字符串的十进制数为:15

所有变量均在本地范围内声明,其引用如上图所示。

结论

在本文中,我们学习了如何将给定的十六进制字符串转换为十进制等价物。


相关文章