반응형
안녕하세요 독학코딩입니다. 오늘은 파이썬에서 교집합과 합집합을 찾는 방법에 대해서 배워보겠습니다. 항상 그렇듯 여러 가지 방법이 존재하지만 if나 for문으로 찾는 방법은 가능은 하지만 굉장히 번거롭고 비효율적인 방법입니다. 그래서 교집합, 합집합을 가장 쉽게 만들 수 있는 set()에 대해서 배워보겠습니다.
Python set() 기본
- 기본모양
set_A = {1, 2, 3, 4}
: 딕셔너리와 비슷한 모양입니다. 다만 key와 value가 없습니다. 리스트 같이 작성하는데 {}로 감싸져 있다고 생각하면 됩니다. - set()를 통해 전환 가능
:set([1,2,3])
,set((1,2,3))
을 통해서 리스트와 튜플을 set()로 전환 가능합니다. - 중복이 되지 않는다.
:print({1, 2, 2, 3, 3, 3})
해보시면 아시겠지만, 중복이 되지 않습니다. - 순서가 없습니다.
- 추가, 삭제가 가능하다
:set_A.add(5)
,set_A.remove(1)
를 통해서 set()에 인자를 추가하거나 뺄 수 있습니다.
Python set() 교집합
set_A = {1, 2, 3, 4}
set_B = {3, 4, 5, 6}
print(set_A & set_B)
print(set_A.intersection(set_B))
파이썬의 교집합은 위와 같이 찾을 수 있습니다. 리스트나 튜플에서 교집합을 찾고자 하면 Python set() 기본에서 설명한 것처럼 set()로 전환 후 사용하시면 됩니다.
Python set() 합집합
set_A = {1, 2, 3, 4}
set_B = {3, 4, 5, 6}
print(set_A | set_B)
print(set_A.union(set_B))
파이썬 합집합은 위와 같이 찾을 수 있습니다. |
가 어디에 있는지 모르신다면, 엔터키 위에 \ 입니다. 쉬프트를 누르고 \를 누르시면 |
입니다.
Python set() 차집합
set_A = {1, 2, 3, 4}
set_B = {3, 4, 5, 6}
print(set_A - set_B)
print(set_A.difference(set_B))
파이썬 차집합은 위와 같이 찾을 수 있습니다.
반응형
'Python > Python FAQ' 카테고리의 다른 글
Python 예외 없이 파일이 존재하는지 확인하는 방법은 무엇인가요?, How do I check whether a file exists without exceptions? (0) | 2023.05.04 |
---|---|
Python if __name__ == "__main__":는 무엇을 하는 것인가요?, What does if __name__ == "__main__": do? (0) | 2023.05.04 |
Python 파이썬 문자열 슬라이싱, string 나누기, 자르기 (0) | 2022.01.06 |
Python 파이썬 str 사이에 str 넣기, 문자 삽입 (0) | 2021.12.25 |
Python 파이썬 제곱 (0) | 2021.12.07 |
댓글