728x90
반응형
집합 자료형은
파이썬 2.3부터 지원 시작
집합에 관련된 것을 쉽게 처리하기 위해 만든 자료형
그리고!!!!!!! 중복을 허용하지 않음!!!!!!!!! 또 순서가 없다(인덱싱 안됨)
실습
s1 = set([1, 2, 3, 4, 5])
s2 = set("hello")
print(s1)
print(s2)
print(list(s2))
#{1, 2, 3, 4, 5}
#{'h', 'l', 'e', 'o'}
#['h', 'l', 'e', 'o']
s3 = set([1, 2, 1, 3, 5, 4, 5, 2])
print(s3) #중복불가
#{1, 2, 3, 4, 5}
l3 = list(s3)
print(l3)
#[1, 2, 3, 4, 5]
집합 자료형 관련 함수
1. 교집합
첫번째: 집합1 & 집합2
두번째: 집합1.intersection(집합2)
numberset1 = set([1, 2, 3, 4, 5, 6])
numberset2 = set([4, 5, 6, 7, 8, 9])
print(numberset1 & numberset2)
print(numberset1.intersection(numberset2))
#{4, 5, 6}
#{4, 5, 6}
2. 합집합
집합을 합쳐서 리턴해줌(중복해서 포함되는 값은 하나씩만 들어감)
첫번째: 집합 1 | 집합2
두번째: 집합1.union(집합2)
numberset1 = set([1, 2, 3, 4, 5, 6])
numberset2 = set([4, 5, 6, 7, 8, 9])
print(numberset1 | numberset2)
print(numberset1.union(numberset2))
#{1, 2, 3, 4, 5, 6, 7, 8, 9}
#{1, 2, 3, 4, 5, 6, 7, 8, 9}
3. 차집합
첫번째:집합1 - 집합2
두번째:집합1.difference(집합2)
numberset1 = set([1, 2, 3, 4, 5, 6])
numberset2 = set([4, 5, 6, 7, 8, 9])
print(numberset1 - numberset2)
print(numberset1.difference(numberset2))
#{1, 2, 3}
#{1, 2, 3}
4. 값 하나 추가하기 add()
구문)
집합.add(value)
numberset1 = set([1, 2, 3, 4, 5, 6])
numberset1.add(20)
print(numberset1)
#{1, 2, 3, 4, 5, 6, 20}
5. 값 여러개 추가하기 update
구문)
집합.update([4,5,6])
(add 후 update해주면 순서대로 배치가 안됨. 원래 이 친구들은 순서 없다함 신경쓰지말것)
numberset1 = set([1, 2, 3, 4, 5, 6])
numberset1.update([100, 200, 300])
print(numberset1)
#{1, 2, 3, 4, 5, 6, 100, 200, 300}
6. 특정 값 제거하기 remove()
구문)
집합.remove(value)
numberset1 = set([1, 2, 3, 4, 5, 6, 100, 200, 300, 20])
numberset1.remove(100)
print(numberset1)
#{1, 2, 3, 4, 5, 6, 200, 300, 20}
728x90
반응형
'Python' 카테고리의 다른 글
[python]제어문 - 조건문 (0) | 2023.03.07 |
---|---|
[python]bool 자료형 (0) | 2023.03.07 |
[python] 딕셔너리(dictionary) 자료형 (0) | 2023.03.07 |
[python] 튜플(tuple) 자료형 (0) | 2023.03.06 |
[python]리스트 자료형 (0) | 2023.03.06 |
댓글