python,从整数转换为二进制向量

时间:2017-08-28 10:31:26

标签: python

我该如何制作:

a1=2
a2=3
b1=1
b2=4

像这样的二进制矢量:

     0,1,2,3,4
a = [0,0,1,1,0]
b = [0,1,0,0,1]

我的意思是这里的整数定义了向量中的索引,它应该是'1'。最快的方法是如何做到这一点?

3 个答案:

答案 0 :(得分:2)

如何简单地使用a1a2作为索引:

a = [0] * 5
a[a1] = 1
a[a2] = 1

答案 1 :(得分:0)

对于您的示例,它将是

a = [0] * 5
b = [0] * 5
a1 = 2
a2 = 3
b1 = 1
b2 = 4

a[a1] = 1
a[a2] = 1
b[b1] = 1
b[b2] = 1

答案 2 :(得分:0)

你可以这样做。通过这种方式,它可以适用于每个索引数量,而无需对所需的任何内容进行硬编码。

oneIndexesA = [a1,a2]
oneIndexesB = [b1,b2]

a = [0] * (max(oneIndexesA) + 1)
for x in oneIndexesA:  
    a[x] = 1

b = [0] * (max(oneIndexesB) + 1)
for x in oneIndexesB:  
    b[x] = 1
相关问题