파이썬기초-7 세트
세트
- 데이터 중복을 허용하지 않음
- 순서 상관없는 데이터 집합
- 인덱싱으로 값을 접근할 수 없음
print(type({1, 2, 3}))
print({30, 10, 20, 40})
print({1, 1, 2, 2, 3, 4, 4})
<class 'set'>
{40, 10, 20, 30}
{1, 2, 3, 4}
세트 연산자
set_1 = {10, 20, 20, 30}
set_2 = {30, 30, 40, 50}
# 교집합
print(set_1 & set_2)
# 합집합
print(set_1 | set_2)
# 차집합
print(set_1 - set_2)
print(set_2 - set_1)
# 여집합
print(set_1 ^ set_2)
{30}
{50, 20, 40, 10, 30}
{10, 20}
{40, 50}
{40, 10, 50, 20}
세트 메소드
|세트 메소드|설명|
|:—:|:—:|
|intersection()
|교집합|
|union()
|합집합|
|difference()
|차집합|
|symmetric_difference()
|여집합|
|add()
|요소 추가|
|update()
|여러개의 요소 추가|
|remove()
|요소 제거(없으면 오류반환)|
|discard()
|요소 제거(없어도 정상실행)|
|clear()
|모든 요소 제거|
set_1 = {10, 20, 20, 30}
set_2 = {30, 30, 40, 50}
print(set_1.intersection(set_2))
print(set_1.union(set_2))
print(set_1.difference(set_2))
print(set_2.difference(set_1))
print(set_1.symmetric_difference(set_2))
set_1.add(50)
print(set_1)
set_1.update([60, 70])
print(set_1)
set_1.remove(60)
print(set_1)
# set_1.remove(1000) # 오류발생
set_1.discard(70)
print(set_1)
set_1.discard(1000) # 정상 실행
print(set_1)
set_1.clear()
print(set_1)
{30}
{50, 20, 40, 10, 30}
{10, 20}
{40, 50}
{40, 10, 50, 20}
{10, 20, 50, 30}
{70, 10, 50, 20, 60, 30}
{70, 10, 50, 20, 30}
{10, 50, 20, 30}
{10, 50, 20, 30}
set()
댓글남기기