카테고리 없음

파이썬 set, 중복 없는 자료구조의 모든 것

pythonsolve 2023. 12. 27.

파이썬 set 설명 파이썬에는 중복이 없는 자료구조인 set이 있습니다. set은 리스트와 비슷한 형태이지만, 중복된 요소를 허용하지 않습니다. 또한, set은 순서가 없기 때문에 인덱스로 접근할 수 없습니다. 이 글에서는 파이썬 set에 대해 자세히 알아보겠습니다.

파이썬 set, 중복 없는 자료구조의 모든 것

 

1: set의 생성

set은 다음과 같이 중괄호로 생성할 수 있습니다.

```python

빈 set

s = set()

리스트로 생성

s = set([1, 2, 3, 4])

문자열로 생성

s = set("hello") ```

2: set의 요소 추가 및 삭제

set의 요소는 add() 메서드를 사용하여 추가할 수 있습니다.

python s.add(5)

요소는 remove() 메서드를 사용하여 삭제할 수 있습니다.

python s.remove(3)

3: set의 연산

set은 합집합, 교집합, 차집합, 대칭 차집합과 같은 연산을 지원합니다.

```python

합집합

s1 = set([1, 2, 3]) s2 = set([4, 5, 6])

s = s1 | s2

print(s) ```

{1, 2, 3, 4, 5, 6}

```python

교집합

s1 = set([1, 2, 3]) s2 = set([4, 5, 6])

s = s1 & s2

print(s) ```

set()

```python

차집합

s1 = set([1, 2, 3]) s2 = set([4, 5, 6])

s = s1 - s2

print(s) ```

{1, 2, 3}

```python

대칭 차집합

s1 = set([1, 2, 3]) s2 = set([4, 5, 6])

s = s1 ^ s2

print(s) ```

{1, 2, 3, 4, 5, 6}

4: set의 메서드

set은 다음과 같은 메서드를 지원합니다.

  • add(): 요소 추가
  • remove(): 요소 삭제
  • clear(): 모든 요소 삭제
  • copy(): set 복사
  • difference(): 차집합
  • intersection(): 교집합
  • isdisjoint(): 두 set의 교집합이 비어 있는지 확인
  • issubset(): 첫 번째 set이 두 번째 set의 부분집합인지 확인
  • issuperset(): 첫 번째 set이 두 번째 set의 상위집합인지 확인
  • pop(): 임의의 요소 삭제
  • remove(): 주어진 요소 삭제
  • symmetric_difference(): 대칭 차집합
  • union(): 합집합

결론

set은 중복이 없는 자료구조로, 다양한 연산을 지원합니다. set을 잘 활용하면 효율적으로 코드를 작성할 수 있습니다.

해시태그

파이썬 #set #집합 #중복 #자료구조

댓글

💲 추천 글