# -*- coding: utf-8 -*- import struct import binascii # 数値 (0x64) -> 文字列 '0x64' num = 100 print "10 進数数値 : %d" % num print "16 進数数値 : %02x" % num numstr = str(num) print "10 進数文字列: %s" % numstr numstr16 = str("%02x" % num) print "16 進数文字列: %s" % numstr16 # 10 進数文字列 '100' -> 数値 (0x64) print "-------------------" numstr = "100" print "10 進数文字列: %s" % numstr num = int(numstr) print "10 進数数値 : %d" % num # 16 進数文字列 '64' -> 数値 (0x64) print "-------------------" numstr16 = "64" print "16 進数文字列: %s" % numstr16 num = int(numstr16, 16) print "16 進数数値 : %02x" % num # バイナリ (00000064) -> 数値 (0x64) print "-------------------" bin = "\x00\x00\x00\x64" print "Binary : %s" % binascii.b2a_hex(bin) d = struct.unpack('!L', bin) print "16 進数数値 : %08x" % d print "10 進数数値 : %d" % d # 数値 (0x64) -> バイナリ (00000064) print "-------------------" d = 0x64 print "16 進数数値 : %08x" % d bin = struct.pack('!L', d) print "Binary : %s" % binascii.b2a_hex(bin) # 16 進数文字列 '64' -> バイナリ (00000064) print "-------------------" numstr16 = "64" print "16 進数文字列: %s" % numstr16 d = int(numstr16, 16) bin = struct.pack('!L', d) print "Binary : %s" % binascii.b2a_hex(bin)
実行結果
$ python number.py 10 進数数値 : 100 16 進数数値 : 64 10 進数文字列: 100 16 進数文字列: 64 ------------------- 10 進数文字列: 100 10 進数数値 : 100 ------------------- 16 進数文字列: 64 16 進数数値 : 64 ------------------- Binary : 00000064 16 進数数値 : 00000064 10 進数数値 : 100 ------------------- 16 進数数値 : 00000064 Binary : 00000064 ------------------- 16 進数文字列: 64 Binary : 00000064
確実の動くもので、良い参考になりました。
返信削除ありがとうございました!!!
Chen