既存のバイナリタイプの左側に「0」の値を追加するにはどうすればよいですか?
以下を使用してバイナリタイプを取得します。
binary=bin(int(symbol))
ここsymbol
でintです。
それを行う方法はありますか?
結果を文字列にしたい。
バイナリタイプはありません。結果bin()
は文字列です。文字列の最後にゼロを追加する方法は次のとおりです。
>>> bin(11)
'0b1011'
>>> bin(11) + '0000'
'0b10110000'
左側にゼロを追加したいように思われるので、の値に関係なく、結果の文字列が同じ長さになるようにこれを行っていると想定していますsymbol
。
これを行う良い方法の1つstr.format()
は、関数の代わりに使用することです。これはbin()
、結果の文字列に常に8桁があり、0b
プレフィックスを使用した場合と同じように存在する例bin()
です。
>>> '0b{0:0>8b}'.format(3)
'0b00000011'
>>> '0b{0:0>8b}'.format(11)
'0b00001011'
何が必要か正確にはわからないため、どこに「0」を追加します。
print bin(1<<8)
print bin(1).zfill(8).replace("b", "")
お役に立てば幸いです。〜ベン