比较每个元素

时间:2016-05-25 12:46:16

标签: python arrays

我需要在每个元素的python中比较两个整数数组。第二个数组由第一个数组中的元素组成,但并不总是每个。我需要检查第一个数组中的元素是否存在于第二个数组中。第一个和第二个数组中的所有元素都是唯一。我需要一个二进制字符串,它包含第一个数组中每个元素的布尔值(0/1),这个元素在第二个数组中不存在/存在。

例如:我的第一个数组arr1=[1,2,3]和我的第二个数组arr2=[2]

我需要结果为"010"。第一个"0"表示arr1中的第一个元素(即1)不存在于arr2中。 第二个"1"表示arr1中的第二个元素(即2)存在于arr2中。第三个"0"表示arr1中不存在arr2中的第三个元素(即3)。

如何在python中完成?

1 个答案:

答案 0 :(得分:1)

我认为你的数组是简单的列表,然后你可以简单地使用列表理解来完成这个:

output = "".join( [ "1" if x in arr2 else "0" for x in arr1] )

如果您对整数列表没问题,可以将其简化为:

 output = [1 if x in arr2 else 0 for x in arr1]