10進数を2進数に変換して表示する。
Python2.4で10進数を2進数にする処理が見つからなかったので書きました。
ソース
#!/usr/bin/python def dec2bin(decimal): """ decimal value encode to binary string """ result = [] while decimal: decimal, binary = divmod(decimal,2) result.append(str(binary)) flg = True while flg: if len(result) != 0 and len(result) % 4 == 0: flg = False else: result.append('0') return ''.join(reversed(result)) if __name__ == '__main__': print "dec2bin(0) :", dec2bin(0).rjust(15) print "dec2bin(10) :", dec2bin(10).rjust(15) print "dec2bin(15) :", dec2bin(15).rjust(15) print "dec2bin(16) :", dec2bin(16).rjust(15) print "dec2bin(255) :", dec2bin(255).rjust(15) print "dec2bin(256) :", dec2bin(256).rjust(15)
実行結果
$ python dec2bin.py dec2bin(0) : 0000 dec2bin(10) : 1010 dec2bin(15) : 1111 dec2bin(16) : 00010000 dec2bin(255) : 11111111 dec2bin(256) : 000100000000