我想要一个从get_node()获得的MAC地址的普通格式。
我得到的格式是0x0L0xdL0x60L0x76L0x31L0xd6L,我希望删除这个x,并且L项是一个真正的十六进制数。应该是00-0D-60-76-31-D6。
我怎么知道?
def getNetworkData (self):
myHostname, myIP, myMAC = AU.getHostname()
touple1 = (myMAC & 0xFF0000000000) >> 40
touple2 = (myMAC & 0x00FF00000000) >> 32
touple3 = (myMAC & 0x0000FF000000) >> 24
touple4 = (myMAC & 0x000000FF0000) >> 16
touple5 = (myMAC & 0x00000000FF00) >> 8
touple6 = (myMAC & 0x0000000000FF) >> 0
readableMACadress = hex(touple1) + hex(touple2) + hex(touple3) + hex(touple4) + hex(touple5) + hex(touple6)
print readableMACadress
return myHostname, myIP, readableMACadress
最佳答案
使用
readableMACaddress = '%02X-%02X-%02X-%02X-%02X-%02X' % (touple1, touple2, touple3, touple4, touple5, touple6)
更简单地说,您可以使用
readableMACaddress = '-'.join('%02X' % ((myMAC >> 8*i) & 0xff) for i in reversed(xrange(6)))
关于python - Python为MAC地址获取普通的十六进制格式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12404622/