파이썬 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 #집합 #중복 #자료구조
댓글