Files
30-seconds-of-code/snippets/symmetric_difference.md
Isabelle Viktoria Maciohsek bff03eb7f4 Update snippet descriptions
2020-11-02 19:28:35 +02:00

547 B

title, tags
title tags
symmetric_difference list,intermediate

Returns the symmetric difference between two iterables, without filtering out duplicate values.

  • Create a set from each list.
  • Use a list comprehension on each of them to only keep values not contained in the previously created set of the other.
def symmetric_difference(a, b):
  (_a, _b) = (set(a), set(b))
  return [item for item in a if item not in _b] + [item for item in b
          if item not in _a]
symmetric_difference([1, 2, 3], [1, 2, 4]) # [3, 4]