在Python中将整数数组转换为二进制代码数组

时间:2019-03-18 18:56:09

标签: python

我是Python的新手,需要用二进制代码将整数数组转换为一个。

s_str = "test"    
s_acii = [ord(c) for c in s_str]
print(s_acii)
>> [116, 101, 115, 116]

我需要什么:

>> [1110100, 1100101, 1110011, 1110100]

谢谢!

2 个答案:

答案 0 :(得分:1)

您可以使用bin built-in function将整数转换为二进制表示形式:

>>> l = [116, 101, 115, 116]
>>> [bin(i) for i in l]
['0b1110100', '0b1100101', '0b1110011', '0b1110100']

如果您不想使用0b前缀,请使用带有binary integer representation的字符串格式:

>>> l = [116, 101, 115, 116]
>>> ["{0:b}".format(i) for i in l]
['1110100', '1100101', '1110011', '1110100']

答案 1 :(得分:0)

您可以将str.format的{​​{1}}方法用作演示类型:

b

这将输出:

print('[{}]'.format(', '.join(map('{:b}'.format, s_acii))))