2장의 마지막 부분인 집합과 불 자료형, 변수에 대해 알아보도록 하겠다!
🔎 집합
특징
중복X
순서X -> 인덱싱 불가능
선언
s1=set([1,2,3])
한 개의 집합 정리
s1=set([1,2,3])
1. 값 추가
//1개
s1.add(4)
//여러 개
s1.update([4,5,6])
2. 값 삭제
s1.remove(1)
두 개의 집합 정리
1. 교집합
s1 & s2
s1.intersection(s2) //s1과 s2 순서 상관 X
2. 합집합
s1 | s2
s1.union(s2) //s1과 s2 순서 상관 X
3. 차집합
s1 - s2
s1.dirrerence(s2) //s1과 s2 순서 상관 O
//만일 아래의 집합들이 있다면?
s1=set([1,2,3,4,5,6])
s2=set([4,5,6,7,8,9])
s1 - s2 👉🏻 {1,2,3}
s2 - s1 👉🏻 {7,8,9}
🔎 불(bool)
특징
참/거짓 구분
🚨 True/False (첫 글자는 대문자 필수)
판단 내리는 방법
비어있다면? False
비어있지 않다면? True
🔎 변수
변수 선언
1. 튜플로 대입
a,b=('python', 'life')
2. 값 바꾸기
a=5
b=10
a,b=b,a
#바뀐 값 확인
a 👉🏻10
b 👉🏻5
📢 C++에선 temp를 선언하여 바꾸어 주었지만, 파이썬에선 temp가 필요없다는 사실!
복사
리스트를 복사하면 원본과 복사본의 주소가 같다
a=[1,2,3]
b=a
이때, id(a)==id(b) 이며 a is b > True 이다!
a[0]=4
a=[4,2,3]
b=[4,2,3]
'복사 O 주소 같음 X'을 위해선?
1. [:] 이용
a=[1,2,3]
b=a[:]
2. copy 모듈 이용
from copy import copy
a=[1,2,3]
b=copy(a)
a=[1,2,3]
b=a.copy()
변수를 대입하였을 때, 할당된 메모리 주소가 조금 복잡한 개념이 적용되어 있다
깊게 들어간다면, 깊은 복사와 얕은 복사를 비교하고 적용할 수 있어야 한다는 말이다!
그 내용은 '점프 투 파이썬'을 벗어나는 부분이기에 새로운 글로 포스팅 할 예정이다 😊
2장 내용 공부 끝! 👋👋
'프로그래밍 - 기본 > Python' 카테고리의 다른 글
[점프 투 파이썬] 2장 - 연습문제 풀이 (0) | 2021.07.23 |
---|---|
[변수] 얕은 복사와 깊은 복사 (0) | 2021.07.20 |
[점프 투 파이썬] 2장 - 리스트 + 튜플 + 딕셔너리 자료형 (0) | 2021.07.20 |
[점프 투 파이썬] 2장 - 숫자형 + 문자열 자료형 (0) | 2021.07.12 |