当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python Hex转String用法及代码示例


十六进制表示是以人类可读的形式表达二进制数据的常见格式。将十六进制值转换为字符串是 Python 中的一项常见任务,开发人员经常寻求高效且简洁的方法。在本文中,我们将探索在 Python 中将十六进制转换为字符串的不同方法。

在 Python 中将十六进制转换为字符串

以下是将十六进制转换为字符串的方法Python

  • 使用列表理解
  • 使用编解码器.decode()
  • 使用字节。fromhex()

使用列表理解将十六进制转换为字符串

在此示例中,以下方法涉及使用列表理解来迭代十六进制字符串,将每对字符转换为整数,然后将它们连接为string.

Python3


# Example hex values
hex_values = "53686976616e6720546f6d6172" 
result_string = ''.join([chr(int(hex_values[i:i+2], 16)) for i in range(0, len(hex_values), 2)])
print(result_string)
print(type(result_string))
输出
Shivang Tomar
<class 'str'>


使用 codecs.decode 将十六进制转换为字符串

在这个例子中,下面的代码codecsPython 中的 module 提供了一种处理编码的通用方法。通过使用codecs.decode(),我们可以直接将十六进制字符串转换为字符串。

Python3


import codecs
# Example hex values
hex_values = "507974686f6e" 
result_string = codecs.decode(hex_values, 'hex').decode('utf-8')
print(result_string)
print(type(result_string))
输出
Python
<class 'str'>


使用字节将十六进制转换为字符串。fromhex()

在这个例子中,我们使用bytes.fromhex()Python 中的方法旨在从十六进制字符串创建字节对象。将其与decode方法允许我们获取一个字符串。

Python3


# Example hex values
hex_values = "4765656b73666f724765656b73" 
byte_values = bytes.fromhex(hex_values)
result_string = byte_values.decode('utf-8')
print(result_string)
print(type(result_string))
输出
GeeksforGeeks
<class 'str'>




相关用法


注:本文由纯净天空筛选整理自venkateshk1220大神的英文原创作品 Convert Hex to String in Python。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。