从 Python 字符串中读取字节
我在字符串中有十六进制数据。我需要能够逐字节解析字符串,但通过阅读文档,按字节获取数据的唯一方法是通过 f.read(1) 函数。
如何将十六进制字符的字符串解析为列表、数组或可以逐字节访问的某种结构。
I have hex data in a string. I need to be able parse the string byte by byte, but through reading the docs, the only way to get data bytewise is through the f.read(1) function.
How do I parse a string of hex characters, either into a list, or into an array, or some structure where I can access byte by byte.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
听起来您可能真正想要的(Python 2.x)是:
这会将每对十六进制字符转换为其整数表示形式。
在 Python 3.x 中,您可以这样做:
但是由于
unhexlify
的结果是一个字节字符串,因此您也可以只访问元素:还有 Python 3
bytes.fromhex()
函数:It sounds like what you might really want (Python 2.x) is:
This converts each pair of hex characters into its integer representation.
In Python 3.x, you can do:
But since the result of
unhexlify
is a byte string, you can also just access the elements:There is also the Python 3
bytes.fromhex()
function:您可以像遍历任何其他序列一样遍历字符串。
You can iterate through a string just as you can any other sequence.
数据将是一个列表,其中每个元素都是字符串中的一个字符。
Data will be a list where each element is a character from the string.