Praful Bagai
Praful Bagai

Reputation: 17402

Check whether an item in a list exist in another list or not python

There are 2 list

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

Now I want to check whether an element from a exist in b or not in python one-liner.

I can use loop on a and then check if it exist in b or not. But I want something pythonic way (one-liner).

Upvotes: 4

Views: 5451

Answers (3)

VIKASH JAISWAL
VIKASH JAISWAL

Reputation: 838

len(set(a+b)) < len(set(a)) + len(set(b))

Upvotes: 0

fscore
fscore

Reputation: 2619

I think you should use sets. This is the way you can do it:

def check_element(a, b):
  return not set(a).isdisjoint(b)

Upvotes: 3

Ramchandra Apte
Ramchandra Apte

Reputation: 4079

bool(set(a)&set(b)) converts a and b into sets and then applies the intersection operator (&) on them. Then bool is applied on the resulting set, which returns False if the set is empty (no element is common), otherwise True (the set is non-empty and has the common element(s)).

Without using sets: any(True for x in a if x in b). any() returns True if any one of the elements is true, otherwise False.

Upvotes: 7

Related Questions