如何将十六进制MAC地址转换为指定\x格式的Python字节串?
MAC地址十六进制转字节串的显示问题解决办法
你用binascii.unhexlify("00453645f200")得到的b'\x00E6E\xf2\x00'和预期的\x00\x45\x36\x45\xf2\x00本质是同一个字节串。Python显示字节串时,会把可打印的ASCII字符(比如\x45对应ASCII的'E')直接显示,不可打印字符才用\xXX格式,这只是显示形式的差异,字节内容完全一致。
如果需要输出全\xXX格式的字符串(比如用于日志或特定格式输出),可以手动遍历字节串格式化:
import binascii mac_hex = "00453645f200" byte_data = binascii.unhexlify(mac_hex) formatted_result = ''.join(f'\\x{b:02x}' for b in byte_data) print(formatted_result) # 输出:\x00\x45\x36\x45\xf2\x00
如果只是验证字节内容,直接使用byte_data即可,它的实际值和你预期的字节串完全一致,显示形式不影响功能。
内容的提问来源于stack exchange,提问作者Ti a
相关产品推荐
相关产品推荐

