반응형
파이썬의 set은 고유한 원소들의 집합을 나타내는 데이터 구조이며, 여러 가지 특징이 있습니다.
- 고유한 원소들: Set은 중복된 원소를 허용하지 않습니다. 각 원소는 유일해야 합니다.
- 순서가 없음: Set은 원소들의 순서를 유지하지 않습니다. 따라서 인덱스나 순서로 원소에 접근할 수 없습니다.
- 가변성(Mutable): Set은 가변형(mutable)이므로 원소를 추가하거나 제거할 수 있습니다.
- 수학적 연산 지원: Set은 합집합, 교집합, 차집합과 같은 수학적 연산을 지원합니다.
아래는 간단한 사용 예시입니다.
# 빈 set 생성
my_set = set()
# 원소 추가
my_set.add(1)
my_set.add(2)
my_set.add(3)
print(my_set)
# 중복된 원소는 무시됨
my_set.add(2)
print(my_set)
# 원소 제거
my_set.remove(3)
print(my_set)
(Output)
{1, 2, 3} {1, 2, 3} {1, 2} |
다음은 합집합, 교집합, 차집합 구합니다.
set1 = {1, 2, 3}
set2 = {3, 4, 5}
union_set = set1.union(set2) # 합집합
intersection_set = set1.intersection(set2) # 교집합
difference_set = set1.difference(set2) # 차집합
print('set1:', set1)
print('set2:', set2)
print('합집합:', union_set)
print('교집합:', intersection_set)
print('차집합:', difference_set)
(Output)
set1: {1, 2, 3} set2: {3, 4, 5} 합집합: {1, 2, 3, 4, 5} 교집합: {3} 차집합: {1, 2} |
리스트를 집합(set)으로 만들 수 있습니다.
s1 = set([1,2,3,4,5])
print(type(s1))
print(s1)
문자열을 집합으로 만들 수 있습니다.
s1 = set('Python')
print(s1)
집합(set)에는 다음과 같은 연산 또는 함수(메소드)가 있습니다.
함수 또는 메소드 | 설명 |
len(s1) | 집합 s1의 요소 개수 |
e in s1 | e가 집합 s1에 있으면 True를 반환 |
s1.add(e) | e를 집합에 추가 |
s1.remove(e) s21.discard(e) |
e를 집합에서 삭제 |
s1.clear() | 집합의 모든 요소를 삭제 |
s1.issubset(s2) | s1이 s2의 부분 집합이면 True를 반환 |
s1 == s2 s1 != s2 |
집합 s1과 s2가 같으면 True를 반환 집합 s1과 s2가 같지 않으면 True를 반환 |
s1.union(s2) s1 | s2 |
합집합 |
s1.intersection(s2) s1 & s2 |
교집합 |
s1.diference(s2) s1 – s2 |
차집합 |
반응형
'Python' 카테고리의 다른 글
(파이썬) matplotlib.pyplot bar() 막대그래프 그리기 (0) | 2023.11.20 |
---|---|
(파이썬) matplotlib: 파이(pie) 차트 그리기 (0) | 2023.11.18 |
(파이썬) 소수인지 판단하는 함수 is_prime (0) | 2023.11.17 |
(파이썬) 텍스트 파일 읽기 저장하기 readline, writelines (0) | 2023.11.15 |
(파이썬) 함수의 정의와 호출, 함수의 기본값, 가변 매개변수 (0) | 2023.11.14 |