如何在 Python 中将字节转换为十六进制 您所在的位置:网站首页 python转十六进制 如何在 Python 中将字节转换为十六进制

如何在 Python 中将字节转换为十六进制

#如何在 Python 中将字节转换为十六进制| 来源: 网络整理| 查看: 265

在Python编程语言中,字节就像一个数组。当我们想要表示一组字节值时,我们可以考虑bytes()数据类型。bytes 数据类型只允许从 0 到 255 的值。这hex() 是 python 中的内置函数之一。它将指定的整数转换为相应的十六进制值。它以“0x”为前缀。它返回一个十六进制字符串。

在本教程中,我们将学习如何使用hex()方法和binascii模块将字节转换为十六进制值。

示例:从字符串中获取字节对象

众所周知,如何将任何整数或字符串转换为字节对象。让我们从将字符串转换为字节对象开始。转换后的字符串,即 bytes 对象可用于转换十六进制值。

string="March" print("String to be converted :",string) byte_data=bytes(string,"utf-16") print("This is the bytes object.") print("Converted string is:",byte_data) 复制

要转换的字符串:March 这是字节对象。 转换后的字符串为:b'\xff\xfeM\x00a\x00r\x00c\x00h\x00'

示例:使用 hex() 方法将字节转换为十六进制

在上面的示例中,我们将字符串转换为字节对象。我们可以使用该字节对象将其转换为十六进制值。

byte_data="\xff\xfeM\x00a\x00r\x00c\x00h\x00".encode("utf-16") print("byte to be converted:",byte_data) print("byte converted to hexadecimal value:",byte_data.hex()) print("Type of this object is:",type(byte_data.hex())) 复制

要转换的字节:b'\xff\xfe\xff\x00\xfe\x00M\x00\x00\x00a\x00\x00\x00r\x00\x00\x00c\x00\x00\x00h\x00\x00\x00' 字节转换为十六进制值:ffffeff00fe004d00000061000000720000006300000068000000 这个对象的类型是:

示例:使用 binascii 模块将字节转换为十六进制。

binascii 模块由各种方法组成,这些方法将二进制转换为各种编码的二进制表示。在 binascii 模块中,有一个名为 hexlify() 的方法可以将字节转换为十六进制值。

import binascii string="studytonight" print("the string is:", string) in_bytes=bytes(string,"utf-8") print("string to byte:",in_bytes) hex_bytes = binascii.hexlify(in_bytes) print("hexlify converts the data to hexdecimal value :",hex_bytes) hex_str = hex_bytes.decode("ascii") print("This is the converted hex value:",hex_str) # To convert hex to bytes y=binascii.unhexlify(hex_str) # unhexlify converts hex value to bytes. print(y) 复制

字符串是: studytonight 字符串到字节: b'studytonight' hexlify 将数据 转换为十六进制值: b'7374756479746f6e69676874 '这是转换后的十六进制值: 7374756479746f6e69676874 b's

结论

在本教程中,我们学习了如何从 hex() 函数和 binascii 模块将字节对象转换为十六进制值。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有