将"0"添加到二进制

Itz*_*984 -1 python binary

如何在现有二进制类型的左侧添加"0"值?

我通过使用以下内容获取二进制类型:

 binary=bin(int(symbol))
Run Code Online (Sandbox Code Playgroud)

哪里symbol是int.

有没有办法做到这一点?

我希望结果是一个字符串.

And*_*ark 7

没有二进制类型,结果bin()是字符串.以下是如何在字符串末尾添加额外的零:

>>> bin(11)
'0b1011'
>>> bin(11) + '0000'
'0b10110000'
Run Code Online (Sandbox Code Playgroud)

因为听起来你想要在左侧添加零,所以我假设你这样做是为了使得结果字符串的长度相同,而不管它的值symbol.

一个很好的方法是使用str.format()而不是bin()函数,这里是一个例子,结果字符串中总是有八位数字,0b前缀仍然存在,就好像你曾经使用过bin():

>>> '0b{0:0>8b}'.format(3)
'0b00000011'
>>> '0b{0:0>8b}'.format(11)
'0b00001011'
Run Code Online (Sandbox Code Playgroud)