이전 글에서 리스트(List)에 대해 알아보았습니다. 이번에는 리스트와 마찬가지로 자료를 묶어 관리하는 방법으로 튜플(Tuple)과 세트(Set)에 대해 알아보겠습니다.
파이썬에서 여러 자료를 하나로 묶어 관리하는 리스트에 대해 알아보기
1. 튜플(Tuple)
튜플은 리스트와 비슷합니다. 크게 다른 점이 있는데 리스트와 달리 튜플은 한 번 만들면 그 내용을 변경할 수 없다는 점입니다.
튜플을 생성할 때는 소괄호 ( )를 사용합니다. 작성 방법은 다음과 같습니다.
튜플 이름 = ( 요소1, 요소2, ..., 요소n )
튜플의 경우에는 소괄호를 사용하지 않고 다음과 같이 작성하여 생성할 수도 있습니다.
튜플 이름 = 요소1, 요소2, ..., 요소n
또한, 리스트처럼 인덱싱, 슬라이싱 및 메서드를 사용할 수 있습니다. 하지만, 튜플은 내용을 변경하는 메서드들 append, insert, extend, remove, pop과 같은 메서드들은 사용할 수 없습니다.
2. 세트 (Set)
세트(Set) 역시 여러 자료형을 하나로 묶는 자료형입니다. 하지만, 이전 리스트나 튜플과 달리 요소들의 인덱싱 번호가 없습니다. 또한, 같은 값을 갖는 요소가 존재하지 않으며 중복되는 요소가 입력되면 삭제되어 하나의 요소만 존재합니다.
세트는 수학에서 집합과 같다고 생각하시면 됩니다. 집합에서 교집합, 합집합, 차집합과 같은 계산을 하는데 세트 역시 이와 동일하게 연산이 가능합니다.
우선, 세트를 생성할 때는 중괄호 { }를 사용하며 다음과 같이 작성하여 만듭니다.
세트 이름 = { 요소1, 요소2, ..., 요소n }
그리고, 연산은 다음과 같은 기호 및 메서드를 사용합니다.
연산 | 기호 | 메서드 |
교집합 | A & B | intersection |
합집합 | A | B | union |
차집합 | A - B | difference |
합집합 기호 | 는 키보드에서 Shift 키를 누른 상태에서 \키를 누르시면 됩니다.
3. 예제를 통해 확인하기
아나콘다의 주피터 노트북을 실행하고 New-Python3을 실행합니다.
3.1 튜플 예제
코드 창에 다음과 같이 입력합니다.
tuple1 = (0, 1, 2)
tuple2 = (3, 4, 5, 6, 7)
print (tuple1 + tuple2)
print (tuple1[1])
print (tuple2[0:4])
print (tuple2.count(7))
print (tuple2)
튜플 tuple1과 tuple2를 생성합니다.
tuple1 + tuple2는 tuple1과 tuple2의 요소들을 서로 합칩니다.
tuple1[1]은 tuple1의 요소 중에서 인덱스 번호 1인 값을 반환합니다. 여기서는 1입니다.
tuple2[0:4]는 tuple2의 요소 중에서 인덱스 번호가 0부터 3까지의 요소를 반환합니다. (리스트와 동일)
tuple2.count(7)은 count메서드를 사용하여 7이란 값이 tuple2에 몇 개가 있는지 확인하여 수량을 반환합니다. 여기서는 7이란 값이 한 개 있으므로 1을 반환합니다.
위의 코드를 실행하면 다음과 같은 결과를 얻습니다.
(0, 1, 2, 3, 4, 5, 6, 7)
1
(3, 4, 5, 6)
1
(3, 4, 5, 6, 7)
3.2 세트 예제
코드 창에 다음과 같이 입력합니다.
set1 = {0, 1, 2, 3}
set2 = {2, 3, 4, 5}
print (set1 & set2)
print (set1 | set2)
print (set1 - set2)
print (set1.intersection(set2))
print (set1.union(set2))
print (set1.difference(set2))
set1 & set2와 set1.intersection(set2)는 두 세트의 교집합을 구하는 것으로 동일한 값을 반환합니다. 차이는 앞에 것은 기호를 사용하였고 뒤에는 메서드를 사용한 것뿐입니다.
set1 | set2와 set1.union(set2)는 두 세트의 합집합을 구하여 값을 반환합니다.
set1 - set2와 set1.difference(set2)는 두 세트의 차집합으로 set1의 요소와 set2의 요소중 동일한 값은 제거하고 set1의 나머지 요소들을 반환합니다.
위의 코드를 실행하면 다음과 같은 결과를 얻습니다.
{2, 3}
{0, 1, 2, 3, 4, 5}
{0, 1}
{2, 3}
{0, 1, 2, 3, 4, 5}
{0, 1}
'엑셀 > With Python' 카테고리의 다른 글
파이썬 반복문과 조건문에 대해 알아보기 (0) | 2021.11.24 |
---|---|
파이썬 딕셔너리(dict)에 대해 알아보기 (0) | 2021.11.22 |
파이썬에서 여러 자료를 하나로 묶어 관리하는 리스트에 대해 알아보기 (0) | 2021.11.18 |
파이썬 문자열과 Bool형에 대해 알아보기 (0) | 2021.11.16 |
파이썬 주석 처리 방법과 상수 및 변수에 대해 알아보기 (0) | 2021.11.16 |