집합 자료형
집합 자료형은 set()을 사용하여 생성할수 있고 몇가지 특징이 있다.
특징
◾️ 중복을 허용하지 않는다.
◾️ 순서가 없다.jip = set([1,2,3]) hop = set("Hi,hello") print(jip,hop)
{1, 2, 3} {'e', 'i', ',', 'h', 'H', 'l', 'o'}
set 자료형에 인덱싱으로 접근하려면 리스트나 튜플형으로 변환해서 사용하면 된다.
jip = set([1,2,3]) hop = set("Hi,hello") print(jip,hop) li = list(jip) tu = tuple(hop) print(li,tu)
{1, 2, 3} {'e', 'i', ',', 'h', 'H', 'l', 'o'}
[1, 2, 3] ('e', 'i', ',', 'h', 'H', 'l', 'o')
교집합,합집합,차집합 구하기
교집합
'&' 기호를 사용 하면 간단히 구할수 있고,
intersection 함수를 통해도 구할수 있다.
합집합
'|' 기호를 통해서 구할수 있고,
union 함수를 이용하여 구할수 있다.
차집합
'-' 기호로 구할수 있고,
difference 함수를 사용하여 구할수 있다.
gyo = set([1,2,3,4]) cha = set([3,4,5,6]) print(gyo&cha, gyo.intersection(cha), "교집합") print(gyo|cha, gyo.union(cha), "합집합") print(gyo - cha, cha - gyo, gyo.difference(cha), "차집합")
{3, 4} {3, 4} 교집합
{1, 2, 3, 4, 5, 6} {1, 2, 3, 4, 5, 6} 합집합
{1, 2} {5, 6} {1, 2} 차집합
집합 관련 함수들
func = set([1,2,3])
값 1개 추가하기(add)
만들어진 set 자료형에 1개의 값을 추가할 때에 add() 함수를 사용한다.func.add(4) print("add() ", func)
add() {1, 2, 3, 4}
값 여러개 추가하기 (update)
여러개의 값을 추가할 때엔 update() 함수를 사용한다.func.update([5,6]) print("update() ", func)
update() {1, 2, 3, 4, 5, 6}
특정 값 제거하기 (remove)
특정 값을 제거하고 싶을 때에는 remove() 함수를 사용한다.func.remove(1) print("remove() ", func)
remove() {2, 3, 4, 5, 6}