(Python)格式化列表中的元素

(Python)格式化列表中的元素,python,Python,所以我试图让列表中的元素有7个字节长,但我自己却没能做到这一点 redChannelData=[46,49,50,51,53,53,54,56,59,59,60,61,62,62,64,64,65] redChannelList=[] 对于redChannelData中的值: redChannelListBinary=bin(值)[2:] 追加(redChannelListBinary) redChannelListBinaryList=[[int(b)表示二进制中的b]表示redChanne

所以我试图让列表中的元素有7个字节长,但我自己却没能做到这一点

redChannelData=[46,49,50,51,53,53,54,56,59,59,60,61,62,62,64,64,65]
redChannelList=[]
对于redChannelData中的值:
redChannelListBinary=bin(值)[2:]
追加(redChannelListBinary)
redChannelListBinaryList=[[int(b)表示二进制中的b]表示redChannelList中的二进制]

打印(redChannelListBinaryList)
我使用format函数并指定我感兴趣的最多7位

redChannelData = [46, 49, 50, 51, 53, 53, 54, 56, 59, 59, 60, 61, 62, 62, 64, 64, 65, 65]
redChannelList = []
for value in redChannelData:
    redChannelListBinary = format(value, '07b')
    redChannelList.append(redChannelListBinary)
redChannelListBinaryList = [[int(b) for b in binary] for binary in redChannelList]
print(redChannelListBinaryList)
输出

[[0, 1, 0, 1, 1, 1, 0], [0, 1, 1, 0, 0, 0, 1], [0, 1, 1, 0, 0, 1, 0], [0, 1, 1, 0, 0, 1, 1], [0, 1, 1, 0, 1, 0, 1], [0, 1, 1, 0, 1, 0, 1], [0, 1, 1, 0, 1, 1, 0], [0, 1, 1, 1, 0, 0, 0], [0, 1, 1, 1, 0, 1, 1], [0, 1, 1, 1, 0, 1, 1], [0, 1, 1, 1, 1, 0, 0], [0, 1, 1, 1, 1, 0, 1], [0, 1, 1, 1, 1, 1, 0], [0, 1, 1, 1, 1, 1, 0], [1, 0, 0, 0, 0, 0, 0], [1, 0, 0, 0, 0, 0, 0], [1, 0, 0, 0, 0, 0, 1], [1, 0, 0, 0, 0, 0, 1]]
您可以这样尝试:

redChannelData=[46,49,50,51,53,53,54,56,59,59,60,61,62,62,64,64,65]
redChannelList=[]
对于redChannelData中的值:
redChannelListBinary=bin(值)[2:]
而len(redChannelListBinary)<7:
redChannelListBinary='0'+redChannelListBinary
追加(redChannelListBinary)
redChannelListBinaryList=[[int(b)表示二进制中的b]表示redChannelList中的二进制]

print(redChannelListBinaryList)
ohlol,我不想改变的一个变量就是答案。谢谢^^