十六进制表示是以人类可读的形式表达二进制数据的常见格式。将十六进制值转换为字符串是 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 将十六进制转换为字符串
在这个例子中,下面的代码codecs
Python 中的 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'>
相关用法
- Python Hex String转Bytes用法及代码示例
- Python HTMLCalendar formatmonth()用法及代码示例
- Python HTMLCalendar formatyear()用法及代码示例
- Python HTMLCalendar formatyearpage()用法及代码示例
- Python HTML转Markdown用法及代码示例
- Python Html转PDF用法及代码示例
- Python HandCalcs用法及代码示例
- Python String format()用法及代码示例
- Python abs()用法及代码示例
- Python any()用法及代码示例
- Python all()用法及代码示例
- Python ascii()用法及代码示例
- Python bin()用法及代码示例
- Python bool()用法及代码示例
- Python bytearray()用法及代码示例
- Python callable()用法及代码示例
- Python bytes()用法及代码示例
- Python chr()用法及代码示例
- Python compile()用法及代码示例
- Python classmethod()用法及代码示例
- Python complex()用法及代码示例
- Python delattr()用法及代码示例
- Python dict()用法及代码示例
- Python dir()用法及代码示例
- Python divmod()用法及代码示例
注:本文由纯净天空筛选整理自venkateshk1220大神的英文原创作品 Convert Hex to String in Python。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。