Returns a list of elements that exist in both lists, after applying the provided function to each list element of both.
set
, using map()
to apply fn
to each element in b
.fn
on a
to only keep values contained in both lists.def intersection_by(a, b, fn):
_b = set(map(fn, b))
return [item for item in a if fn(item) in _b]
from math import floor
intersection_by([2.1, 1.2], [2.3, 3.4], floor) # [2.1]
Python, List
Returns every element that exists in any of the two lists once, after applying the provided function to each element of both.
Python, List
Returns the difference between two lists, after applying the provided function to each list element of both.
Python, List
Returns the symmetric difference between two lists, after applying the provided function to each list element of both.