728x90
반응형

참고자료: https://wikidocs.net/1015

 

02-6 집합 자료형

`[동영상 강의]` : [점프 투 파이썬 02-6 집합 자료형](https://www.youtube.com/watch?v=Gv8wj2mHD8A&list=PLGSQkvB9T6rvn…

wikidocs.net

 

5. 집합

 

# 집합은 set 이라는 키워드를 사용하여 만들 수 있다.
s1 = set([1, 2, 3])
print(s1)
{1, 2, 3}

s2 = set("Hello")
print(s2)
{'e', 'H', 'l', 'o'}


# 집합에 값에는 중복을 허용하지 않고 순서가 따로 없다.
# 집합에서 인덱싱하고 값을 선택하고 슬라이싱하고 형변환이 필요하다. (리스트 or 튜플..)

s1 = set([1, 2, 3])
l1 = list(s1)
print(l1)
[1, 2, 3]
l1[0]
1

t1 = tuple(s1)
print(t1)
(1, 2, 3)
print(t1[0])
1

 

# 값의 중복을 제거할 때도 집합을 많이 사용한다.  

l1 = [1,2,2,3,3,3,3,4]

s1 = set(l1)

print(s1)

{1,2,3,4}

 

li = list(set(l1))

print(li)

[1,2,3,4]

# 다시 리스트 형으로 맞추면 중복이 사라진 리스트형으로 바꿀 수 있다.

 

# 비어있는 집합 자료형은 s = set()로 만들 수 있다.

 

 

 


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

# 예시: 2개의 집합
s1 = set([1, 2, 3, 4, 5, 6])
s2 = set([4, 5, 6, 7, 8, 9])

 


# 교집합 : & or intersection 함수

print(s1 & s2)
{4, 5, 6}
print(s1.intersection(s2))
{4, 5, 6}


# 합집합 : | or union 함수

print(s1 | s2)
{1, 2, 3, 4, 5, 6, 7, 8, 9}
print(s1.union(s2))
{1, 2, 3, 4, 5, 6, 7, 8, 9}

 


# 차집합 : - or difference 함수

print(s1 - s2)
{1, 2, 3}
print(s2 - s1)
{8, 9, 7}

print(s1.difference(s2))
{1, 2, 3}
print(s2.difference(s1))
{8, 9, 7}

 

 


# 집합 자료형 관련 함수


# 값 1개 추가하기 - add
s1 = set([1, 2, 3])
s1.add(4)
print(s1)
{1, 2, 3, 4}

# 값 여러 개 추가하기 - update
s1 = set([1, 2, 3])
s1.update([4, 5, 6])
print(s1)
{1, 2, 3, 4, 5, 6}

# 특정 값 제거하기 - remove
s1 = set([1, 2, 3])
s1.remove(2)
print(s1)
{1, 3}


반응형

+ Recent posts