Python Basic Syntax (파이썬 기초 문법)/Method (메서드)

Set Function & Method (세트 내장함수 & 메서드)

영끼끼 2025. 2. 14. 15:21

 세트관련 내장함수(Built-in Function)

함수 설명 예제 출력
len(set) 집합 크기 반환 len({1, 2, 3}) 3
max(set) 최댓값 반환 max({1, 2, 3}) 3
min(set) 최솟값 반환 min({1, 2, 3}) 1
sum(set) 합계 반환 sum({1, 2, 3}) 6
sorted(set) 정렬된 리스트 반환 sorted({3, 1, 2}) [1, 2, 3]
any(set) 하나라도 참이면 True any({0, 0, 1}) True
all(set) 모두 참이면 True all({1, 2, 3}) True
enumerate(set) 인덱스와 요소 쌍 반환 list(enumerate({1, 2, 3})) [(0, 1), (1, 2), (2, 3)]
zip(set1, set2) 집합 병렬 묶기 list(zip({1, 2}, {'a', 'b'})) [(1, 'a'), (2, 'b')]
map(func, set) 각 요소에 함수 적용 list(map(lambda x: x*2, {1, 2, 3})) [2, 4, 6]
filter(func, set) 조건에 맞는 요소 반환 list(filter(lambda x: x > 1, {1, 2, 3})) [2, 3]
# 1. len(set)
print(len({1, 2, 3}))  # 3

# 2. max(set)
print(max({1, 2, 3}))  # 3

# 3. min(set)
print(min({1, 2, 3}))  # 1

# 4. sum(set)
print(sum({1, 2, 3}))  # 6

# 5. sorted(set)
print(sorted({3, 1, 2}))  # [1, 2, 3]

# 6. any(set)
print(any({0, 0, 1}))  # True

# 7. all(set)
print(all({1, 2, 3}))  # True

# 8. enumerate(set)
print(list(enumerate({1, 2, 3})))  # [(0, 1), (1, 2), (2, 3)]

# 9. zip(set1, set2)
print(list(zip({1, 2}, {'a', 'b'})))  # [(1, 'a'), (2, 'b')]

# 10. map(func, set)
print(list(map(lambda x: x * 2, {1, 2, 3})))  # [2, 4, 6]

# 11. filter(func, set)
print(list(filter(lambda x: x > 1, {1, 2, 3})))  # [2, 3]

 

세트관련 메서드(Method)

메서드 설명 예제 출력
add(x) 집합에 요소 추가 s = {1, 2}; s.add(3) {1, 2, 3}
remove(x) 요소 제거 (없으면 오류) s = {1, 2, 3}; s.remove(2) {1, 3}
discard(x) 요소 제거 (없어도 오류 없음) s = {1, 2, 3}; s.discard(2) {1, 3}
pop() 임의의 요소 제거 후 반환 s = {1, 2, 3}; s.pop() 1 (임의 요소)
clear() 모든 요소 제거 s = {1, 2, 3}; s.clear() {}
union(set2) 합집합 반환 {1, 2}.union({3, 4}) {1, 2, 3, 4}
intersection(set2) 교집합 반환 {1, 2, 3}.intersection({2, 3, 4}) {2, 3}
difference(set2) 차집합 반환 {1, 2, 3}.difference({2, 3, 4}) {1}
symmetric_difference(set2) 대칭 차집합 반환 {1, 2, 3}.symmetric_difference({2, 3, 4}) {1, 4}
issubset(set2) 부분집합 여부 확인 {1, 2}.issubset({1, 2, 3}) True
issuperset(set2) 상위집합 여부 확인 {1, 2, 3}.issuperset({1, 2}) True
isdisjoint(set2) 공통 요소 없는지 확인 {1, 2}.isdisjoint({3, 4}) True
copy() 집합 복사 new_s = {1, 2, 3}.copy() new_s → {1, 2, 3}
# 1. add(x)
s = {1, 2}
s.add(3)
print(s)  # {1, 2, 3}

# 2. remove(x)
s = {1, 2, 3}
s.remove(2)
print(s)  # {1, 3}

# 3. discard(x)
s = {1, 2, 3}
s.discard(2)
print(s)  # {1, 3}

# 4. pop()
s = {1, 2, 3}
popped = s.pop()
print(popped)  # 1 (임의 요소)
print(s)  # {2, 3}

# 5. clear()
s = {1, 2, 3}
s.clear()
print(s)  # set()

# 6. union(set2)
s1 = {1, 2}
s2 = {3, 4}
print(s1.union(s2))  # {1, 2, 3, 4}

# 7. intersection(set2)
s1 = {1, 2, 3}
s2 = {2, 3, 4}
print(s1.intersection(s2))  # {2, 3}

# 8. difference(set2)
s1 = {1, 2, 3}
s2 = {2, 3, 4}
print(s1.difference(s2))  # {1}

# 9. symmetric_difference(set2)
s1 = {1, 2, 3}
s2 = {2, 3, 4}
print(s1.symmetric_difference(s2))  # {1, 4}

# 10. issubset(set2)
s1 = {1, 2}
s2 = {1, 2, 3}
print(s1.issubset(s2))  # True

# 11. issuperset(set2)
s1 = {1, 2, 3}
s2 = {1, 2}
print(s1.issuperset(s2))  # True

# 12. isdisjoint(set2)
s1 = {1, 2}
s2 = {3, 4}
print(s1.isdisjoint(s2))  # True

# 13. copy()
s = {1, 2, 3}
new_s = s.copy()
print(new_s)  # {1, 2, 3}