set 자료형
* 중괄호 사용
s = set{}
ex}
s1 = {1,2,3,4,5}
print(type(s1))
-> set
* 중복이 없는 자료형
st = 'abcdac"
print(set(st))
-> a, b, c, d
# list와 set의 차이점 (중복이 다름)
li = [1,2,3,4,5,3,2,2,1,1]
for i in li :
print(f'{i}의 등장 횟수 = {li.count(i)}')
-> 1 3
2 3
3 2
4 1
5 1
3 2
2 3
2 3
1 3
1 3
for i in set(li) :
print(f'{i}의 등장 횟수 = {li.count(i)}')
-> 1 3
2 3
3 2
4 1
5 1
* 프로그램 실행할 때마다 다르게 나옴
(랜덤, 순서가 없는 자료형)
(인덱싱을 할 수 없음)
st = 'abcdancda'
for i in range(10) :
print(set(st))
* 집합연산에 용이
> 교집합 &
> 합집합 |
> 차집합 -
li1 = [1,2,3,4,5]
li2 = [4,5,6,7,8,9]
print(set(li1)&set(li2)
-> 4,5
print(set(li1)|set(li2))
-> 1,2,3,4,5,6,7,8,9
print(set(li1)-set(li2))
-> 1,2,3
* 자료 추가 add
s = {1,2}
for i in range(100):
s.add(3)
print(s)
-> 1,2,3
* 자료 삭제 remove
s = {1,2,3}
s.remove(3)
print(s)
-> 1,2
ex)
# 중복되는 단어 빼고 단어들이 가사에 몇 번 등장하는지
가사 = ''' '''
단어들 = 가사. split()
for i in set(단어들) :
print(i, 단어들. count(i))
'Progremming Study > python' 카테고리의 다른 글
Python dictionary (0) | 2022.05.28 |
---|---|
Python import (0) | 2022.05.28 |
Python class (0) | 2022.05.27 |
Python 함수 (0) | 2022.05.27 |
Python 문자열 _ formatting (0) | 2022.05.26 |