(Pdb) p mac
'\xd0\xbf\x9c\xd8\xf0\x00'
p type(mac)
<type 'str'>
使用 Python2.7,如何提取和打印准确的 MAC 地址?在 .proto 消息中,mac_address 被定义为“可选字节 mac”。
(Pdb) p mac
'\xd0\xbf\x9c\xd8\xf0\x00'
p type(mac)
<type 'str'>
使用 Python2.7,如何提取和打印准确的 MAC 地址?在 .proto 消息中,mac_address 被定义为“可选字节 mac”。
这也许?
>>> mac_str = ':'.join("{:02x}".format(ord(c)) for c in mac)
>>> print(mac_str)
d0:bf:9c:d8:f0:00
如果您只想要整数列表,请执行以下操作:
mac_decoded = [ord(c) for c in mac]
不知道你所说的“解码”是什么意思......
':'.join([hex(c)[2:] for c in map(ord,'\xd0\xbf\x9c\xd8\xf0\x00')])
印刷:
'd0:bf:9c:d8:f0:0'
基本上,这一行将十六进制字符串转换为 0 到 255 范围整数的列表,然后将每个元素 c 转换回不带 '\x' 字符的十六进制字符串,然后将列表元素连接为带有 ' 的字符串: '介于两者之间。
import struct
a='\xd0\xbf\x9c\xd8\xf0\x00'
for i in range(6):
print hex(struct.unpack("B", a[i])[0])[2:], ":",
印刷
d0 : bf : 9c : d8 : f0 : 0 :