devlights
2/3/2017 - 6:00 AM

Pythonで 数値 -> バイナリ -> 16進文字列 -> バイナリ -> 数値への変換。

Pythonで 数値 -> バイナリ -> 16進文字列 -> バイナリ -> 数値への変換。

In[28]: # 数値からバイナリへ
In[29]: a_number = 1024
In[30]: a_number.to_bytes(4, byteorder='big')
Out[30]: 
b'\x00\x00\x04\x00'
In[31]: # バイナリから16進文字列へ
In[32]: _.hex()
Out[32]: 
'00000400'
In[33]: # 16進文字列からバイナリへ
In[34]: binascii.unhexlify(_)
Out[34]: 
b'\x00\x00\x04\x00'
In[35]: # バイナリから数値へ
In[36]: int.from_bytes(_, byteorder='big')
Out[36]: 
1024