프로그래밍에서 리스트 내용 비교하기

Beginner

This tutorial is from open-source community. Access the source code

소개

프로그래밍에서 두 리스트가 순서에 관계없이 동일한 요소를 포함하는지 확인해야 하는 경우가 많습니다. 이는 두 데이터 세트가 동일한 값을 갖는지 확인하거나 함수가 예상 출력을 반환하는지 확인하는 등 다양한 상황에서 유용할 수 있습니다. 이 챌린지에서는 두 리스트의 내용이 동일한지 확인하는 함수를 작성합니다.

두 리스트가 동일한 내용을 갖는지 확인하기

두 리스트를 인수로 받아 내용이 동일하면 True를, 그렇지 않으면 False를 반환하는 함수 have_same_contents(a, b)를 작성하십시오. 이 함수는 두 리스트가 순서에 관계없이 동일한 요소를 포함하는지 확인해야 합니다.

이 문제를 해결하려면 다음 단계를 따를 수 있습니다.

  1. 두 리스트의 조합에 set()을 사용하여 고유한 값을 찾습니다.
  2. for 루프를 사용하여 각 고유 값의 각 리스트에서 count()를 비교합니다.
  3. 어떤 요소에 대해서든 개수가 일치하지 않으면 False를 반환하고, 그렇지 않으면 True를 반환합니다.
def have_same_contents(a, b):
  for v in set(a + b):
    if a.count(v) != b.count(v):
      return False
  return True
have_same_contents([1, 2, 4], [2, 4, 1]) ## True

요약

이 챌린지에서는 두 리스트가 순서에 관계없이 동일한 내용을 갖는지 확인하는 방법을 배웠습니다. set() 함수를 사용하고 고유한 값을 반복함으로써, 두 리스트에서 각 요소의 count()를 비교하여 동일한 내용을 갖는지 확인할 수 있습니다.