1. 집합

✔︎ 집합 자료형 만들기와 특징

 

>>> s1 = set([1, 2, 3])

>>> s1

{1, 2, 3}

 

>>> s2 = set("Hello")

>>> s2

{'e', 'H', 'l', 'o'}

 

- 중복을 허용하지 않는다. → 따라서 set은 중복 제거를 위한 필터 역할로 종종 사용된다.

- 순서가 없다. → 인덱싱 사용 불가 → 인덱싱을 사용하려면 set을 리스트나 튜블로 변환 후 사용해야 한다.

 

 

✔︎ 관련 함수

 

s1 = set([1, 2, 3, 4, 5, 6])

s2 = set([4, 5, 6, 7, 8, 9])

 

함수
교집합 s1 & s2 {4, 5, 6}
s1.intersection(s2)
합집합 s1 | s2 {1, 2, 3, 4, 5, 6, 7, 8, 9}
s1.union(s2)
차집합 s1 - s2 {1, 2, 3}
s1.difference(s2)
s2 - s1 {8, 9, 7}
s2.difference(s1)
값 1개 추가하기(add) s1 = set([1, 2, 3])
s1.add(4)
s1
{1, 2, 3, 4}
값 여러 개 추가하기(update) s1 = set([1, 2, 3])
s1.update([4, 5, 6])
s1
{1, 2, 3, 4, 5, 6}
특정 값 제거하기(remove) s1 = set([1, 2, 3])
s1.remove(2)
s1
{1, 3}

 

 

 

2. 불

✔︎ 자료형의 참과 거짓

 

자료형 True or False
문자열 "python" True
"" False
리스트 [1, 2, 3] True
[] False
튜플 () False
딕셔너리 {} False
숫자형 0이 아닌 숫자 True
0 False
  None False

 

 

 

3. 자료형의 값을 저장하는 공간, 변수

✔︎ 변수란?

a = [1, 2, 3]

⇒ [1, 2, 3] 값을 가지는 리스트(객체)가 자동으로 메모리에 생성되고 변수 a는 [1, 2, 3] 리스트가 저장된 메모리의 주소를 가리킨다.

 

>>> a = [1, 2, 3]
>>> id(a)
4303029896

- id함수: 변수가 가리키고 있는 객체의 주소 값을 돌려주는 파이썬 내장 함수.

- 변수 a가 가리키는 [1, 2, 3] 리스트의 주소 값은 4303029896 이다.

 

 

✔︎ 리스트를 복사할 때

 

주소 공유 여부
주소 공유 a = [1, 2, 3]
b = a
서로 다른 주소 >>> a = [1, 2, 3]
>>> b = a[:]    #리스트 a의 처음 요소부터 끝 요소까지 슬라이싱
>>> a[1] = 4
>>> a
[1, 4, 3]
>>>b
[1, 2, 3]
>>> from copy import copy
>>> a = [1, 2, 3]
>>> b = copy(a)    #b = a[:] 와 동일

 

* 활용법: 두 변수의 값 바꾸기

>>> a = 3
>>> b = 5
>>> a, b = b, a
>>> a
5
>>> b
3

 

 

 

+ Recent posts