cyb*_*101 3 python mac-address python-2.7 python-3.x dpkt
我有我想作为原始数据发送到 dpkt 的 MAC 地址。dpkt 包希望我将数据作为十六进制字符串传递。所以,假设我有以下 mac 地址: '00:de:34:ef:2e:f4',写为: '00de34ef2ef4',我想编码成类似的东西 '\x00\xdeU\xef.\xf4',反向翻译将提供原始数据。
在 Python 2 上,我找到了几种使用encode('hex')and decode('hex')的方法来做到这一点 。但是,此解决方案不适用于 Python 3。
我很难找到一个代码片段来支持这两个版本。
我会对此提供帮助。
谢谢
binascii模块适用于 Python 2 和 3:
>>> import binascii
>>> binascii.unhexlify('00de34ef2ef4') # to raw binary
b'\x00\xde4\xef.\xf4'
>>> binascii.hexlify(_) # and back to hex
b'00de34ef2ef4'
>>> _.decode('ascii') # as str in Python 3
'00de34ef2ef4'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8382 次 |
| 最近记录: |