Python:如何在二进制文件中添加前导零?当我尝试将它们添加到0b的左侧时

时间:2018-03-25 18:23:53

标签: python

在这个例子中......

temp = 0b110
print temp
temp.str(temp).zfill(8)
print temp

输出是......

0b110
0000b110

如何添加零以便看到8位二进制输出0b00000110?

1 个答案:

答案 0 :(得分:2)

如果你正在调用bin函数,或者使用带有#b的格式字符串,或者其他什么,结果字符串前面有0b,所以现在为时已晚 - 填充,除非你想做一些hacky就像把它拉下来,零填充到n-2个字符,然后把它重新打开。

但是如果你只是在添加前缀之前(或同时)进行零填充,而不是之后,这很容易。例如:

>>> temp = 0b110
>>> format(temp, '#010b')
'0b00000110'

docs详细解释了这一点,但简短版本是:

  • #表示“替代表单”,它为我提供了0b前缀
  • 0表示零填充
  • 10表示宽度为10(包括0b
  • b表示二进制