a= [1,2,3]
b = [1,2,3]
现在我要检查从a
一个元素是否在b
存在或不蟒蛇一个班轮 。
我可以在a
上使用循环,然后检查它是否存在于b
中。但我想要一些pythonic方式(单线)。
a= [1,2,3]
b = [1,2,3]
现在我要检查从a
一个元素是否在b
存在或不蟒蛇一个班轮 。
我可以在a
上使用循环,然后检查它是否存在于b
中。但我想要一些pythonic方式(单线)。
bool(set(a)&set(b))
将a
和b
转换成集合,然后在其上应用intersection operator(&
)。然后将bool应用于结果集合,如果集合为空(无公共元素),则返回False
,否则返回True
(集合非空且具有公共元素)。
没有使用套:any(True for x in a if x in b)
。 any()
如果任何一个元素为真,则返回True,否则返回False。
它是做什么的?请解释。 – PythonEnthusiast
@ user1162512更新了它;我在添加信息时看到了您的评论。 –
我想从存在于'b'中的'a'获取该元素。我怎样才能做到这一点? – PythonEnthusiast
我认为你应该使用套。这是你可以做的方式:
def check_element(a, b):
return not set(a).isdisjoint(b)
len(set(a+b)) < len(set(a)) + len(set(b))
一个衬垫并不总是意味着它是Python的。 –
'b'中的任何(a)' –
同意。但我知道我可以将它转换为python中的单线程,而不是使用循环。 – PythonEnthusiast