2

dec番号を6ビットの2進数に変換しようとしています。bin()正常に動作しますが、重要な先行ゼロは省略されます。

例えば:

  • 0 = 000000
  • 1 = 000001
  • 2 = 000010

など...許可される最大のdec番号は63です。

4

2 に答える 2

8

Matt がコメント ( bin(63)[2:].zfill(6)) で述べたこと、またはPython 2.6+ でフォーマット文字列を使用することのいずれか:

'{0:06b}'.format(63)

暗黙的にグループに番号を付けることができるため、Python 2.7+ では最初のゼロを省略できます。

于 2011-10-07T13:30:17.213 に答える
0

あるいは単に:

n2=[2**x for x in xrange(0, 7)]
n2.reverse()

def getx(x):
    ret = ''
    for z in n2:
        if x >= z:
            x -= z
            ret += '1'
        else:
            ret += '0'

    return ret
于 2011-10-07T14:01:08.987 に答える