728x90

04.파이썬(python) 집합(set) 자료형 

 

 

집합(set) 자료형에 대해서 알아보겠습니다.

우선 집합 자료형의 특징은 중복이 안되고, 순서가 없는 자료형이라 인덱스로 접근이 불가능하다는 점 입니다.

 

집합 자료형은 

 

set1 = set(["a","b","c","a"]) #집합 자료형 선언 방법1

set2 = {"a","b","c","a"} #집합 자료형 선언 방법2

 

이렇게 두가지로 선언을 해줄수 있습니다.

위에서 보면 a가 2개씩 들어갔지만 집합 자료형은 중복이 안되기 때문에 

{'a', 'b', 'c'} 이러한 결과값을 볼 수 있습니다.

 

집합 자료형은 인덱스로 접근이 불가능하다고 했기때문에

인덱스로 접근하려면 리스트로 변경을 해줘야 합니다.

 

set1 = set(["a","b","c"])

list1 = list(set1) #집합을 리스트로 변환

 

다음은 교집합, 합집합, 차집합입니다.

 

#교집합, 합집합, 차집합 구하기

set1 = set([1,2,3,4,5])

set2 = set([3,4,5,6,7])

 

#교집합 

print(set1 & set2)

print(set1.intersection(set2))

 

{3, 4, 5} #결과

 

#합집합

print(set1 | set2)

print(set1.union(set2))

{1, 2, 3, 4, 5, 6, 7} #결과

 

#차집합

print(set1 - set2)

print(set2.difference(set1))

{1, 2} #결과

{6, 7} #결과

 

#값 1개 추가하기(add)

set1 = {1, 2, 3}

set.add(4)

s1 #결과값 = {1, 2, 3, 4}

 

#값 여러개 추가하기(update)

set1 = {1, 2, 3}

set.update([4, 5, 6])

s1 #결과값 = {1, 2, 3, 4, 5, 6}

 

#특정값 제거(remove)

set1 = {1, 2, 3}

set.remove(2)

s1 #결과값 = {1, 3}

+ Recent posts