Set 자료형. 집합.
세트 = {값1, 값2, ...}
1. 순서가 정해져 있지 않음. 따라서 세트를 출력하면 순서가 다르게 나옴.
2. 세트에 들어가는 요소는 중복 불가.
3. 대괄호로 특정 요소만 출력 불가.
그렇다면.. 요소 확인은 어케함?
in / not in 사용
-> T or F 반환.
문자열을 세트로 만들기 가능. (중복된 문자는 포함 ㄴㄴ)
EX)a = set('Jirungee')
>>>a
{i,r,n,J,g,u,e}
range 사용해서 숫자가진 세트도 가능.
EX) a = set(range(3))
>>> a
{0,1,2}
빈 세트 만들기 가능.
a = set()
세트 안에 세트 넣기 불가능. (리스트,딕셔너리와의 차이점)
*참고) 내용 변경할 수 없는 frozenset도 있음.
Frozenset = frozenset(반복가능객체)
Set 연산
XOR은 서로 다르면 참
따라서 집합에서는 두 집합 중 겹치지 않는 요소만 포함
>>> a ^ b
{1, 2, 5, 6}
>>> set.symmetric_difference(a, b)
{1, 2, 5, 6}
https://dojang.io/mod/page/view.php?id=2315
파이썬 코딩 도장: 26.2 집합 연산 사용하기
이제 세트에서 집합 연산과 이에 대응하는 메서드를 사용해보겠습니다. 집합 연산은 파이썬의 산술 연산자와 논리 연산자를 활용합니다. | 연산자는 합집합(union)을 구하며 OR 연산자 |를 사용합
dojang.io
* discard는 특정 요소를 삭제하며 세트에서 요소가 없으면 그냥 넘어갑니다. pop은 임의의 요소를 삭제합니다
* 공약수 문제
num1, num2 = map(int,input().split())
set_a = {i for i in range(1, num1+1) if num1 % i == 0}
set_b = {i for i in range(1, num2+1) if num2 % i == 0}
divisor = set_a & set_b
result = 0
if type(divisor) == set:
result = sum(divisor)
print(result)
*정리https://dojang.io/mod/page/view.php?id=2323
파이썬 코딩 도장: 핵심 정리
딕셔너리 메서드 ▼ 표 26-1 딕셔너리 메서드 메서드 설명 setdefault(키, 기본값) 딕셔너리에 키-값 쌍을 추가, 키만 지정하면 값에 None을 저장 update(키=값) update(딕셔너리) update(리스트) update(튜플) up
dojang.io
'Language > Python' 카테고리의 다른 글
dictionary (0) | 2021.07.24 |
---|---|
string (0) | 2021.07.20 |
2D array + a (0) | 2021.07.18 |
List (0) | 2021.07.09 |
sequence type, baekjoon quest. (0) | 2021.07.04 |