[英]Converting an array to 0s and 1s
假设我有一个数组A = [13, 15, 17]
。 我想创建一个新的数组B
,使得除了第13,15和17条之外的所有条目都是0
,并且这三个中的每一个都是1
。 我怎样才能做到这一点?
使用列表理解:
B = [int(i+1 in A) for i in range(max(A))]
对于从0
到A
最高数字的每个数字,我们取int(i+1 in A)
。 i+1 in A
将是一个布尔值。 如果该数字在A
,则结果为True
。 否则它将是False
。 由于bool
继承自int
,我们可以使用int()
轻松将其转换为普通整数。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.