Pythonで10進数から2進数、8進数、16進数への変換

format関数が使える。
2進数にするにはb、8進数にするにはo、16進数にするにはhを渡す。

http://docs.python.org/library/string.html#format-specification-mini-language


使い方はこんな感じ

10、2、8、16進数の表を出力する

for i in range(0, 16):
    print ' '.join([format(i, radix) for radix in ['04', '04b', '04o', '04x']])


出力結果

0000 0000 0000 0000
0001 0001 0001 0001
0002 0010 0002 0002
0003 0011 0003 0003
0004 0100 0004 0004
0005 0101 0005 0005
0006 0110 0006 0006
0007 0111 0007 0007
0008 1000 0010 0008
0009 1001 0011 0009
0010 1010 0012 000a
0011 1011 0013 000b
0012 1100 0014 000c
0013 1101 0015 000d
0014 1110 0016 000e
0015 1111 0017 000f