【发布时间】:2020-08-24 04:59:32
【问题描述】:
我有一个从 0 开始的整数 e 的升序列表,我想要一个二进制列表 b,其 i-th 元素为 1 当且仅当 i 属于 e .
例如,如果e=[0,1,3,6],那么这个二进制列表应该是[1,1,0,1,0,0,1],
其中第一个 1 是因为 0 在 e 中,第二个 1 是因为 1 在 e 中,
第三个 0 是因为 2 不在e 中,以此类推。
你可以在下面找到我的代码。
我的问题是: python 中有内置的东西吗?如果不是,是我的 接近最有效率的?
def list2bin(e):
b=[1]
j=1
for i in range(1, e[-1]+1):
if i==e[j]:
b.append(1)
j+=1
else:
b.append(0)
return(b)
【问题讨论】: