[英]how to convert decimal to binary with 0 in python
所以我想将所有十进制列表转换为二进制包含0。但是我使它具有int类型并且所有的0都消失了。
输入 = [6, 7, 2, 11, 14, 15, 10, 3, 6, 7, 2, 11, 14, 15, 10, 3]
output = [110, 111, 10, 1011, 1110, 1111, 1010, 11, 110, 111, 10, 1011, 1110, 1111, 1010, 11]
有人可以修复我的代码,使其前面有 0 吗? 像 00000110 它的平均值是 6
这是我的代码:
def dec_to_bin(x):
print(x)
for a in range(0, len(x)):
keluar = x[a]
biner = int(bin(keluar)[2:])
x[a] = biner
return x
您需要str
类型来保留零。 您可以使用格式字符串来指示数字显示为 8 位带前导零的二进制:
def dec_to_bin(x):
return [f'{a:08b}' for a in x]
result = dec_to_bin([6, 7, 2, 11])
print(result)
print(' '.join(result))
Output:
['00000110', '00000111', '00000010', '00001011']
00000110 00000111 00000010 00001011
zfill
function 将填充左侧的前导零。 您可以在参数上指定数字:
x[a] = biner.zfill(8)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.