在python中将列表中的条目格式化为8位二进制

在python中将列表中的条目格式化为8位二进制,python,python-3.x,list,format,Python,Python 3.x,List,Format,我有一个列表a=[10001110110]。我想使用格式选项将列表中的每个条目设置为8位: B = '{0:08b}'.format(A[1]) B = '{0:08b}'.format(A[2]) 但是当我打印(B)时。我得到的输出是:B=100001111000001011110和B=11000011010101011 为什么会这样?此命令不用于列表吗?列表A中定义的整数文本以小数指定。您应该将它们指定为二进制文字(前缀为0b): 这将产生: 00100011 01110110 与所有格

我有一个列表
a=[10001110110]
。我想使用格式选项将列表中的每个条目设置为8位:

B = '{0:08b}'.format(A[1])
B = '{0:08b}'.format(A[2])
但是当我打印(B)时。我得到的输出是:
B=100001111000001011110
B=11000011010101011


为什么会这样?此命令不用于列表吗?

列表
A
中定义的整数文本以小数指定。您应该将它们指定为二进制文字(前缀为
0b
):

这将产生:

00100011
01110110

与所有格式选项一样,如果结果不符合指定的长度,则长度将展开。很好地掌握了常数。@markransem谢谢你。这很有帮助。
00100011
01110110