본문 바로가기
Python/기초

[파이썬 기초 #4] 변수의 자료형 2 - 리스트 / 튜플 / 세트 자료형 (feat. 인덱싱 / 슬라이싱 / 합집합 / 교집합 / 차집합)

by 포푸리 (POPOOLY) 2020. 6. 3.
반응형

 

안녕하세요!!

이것저것 관심많은 포푸리입니다.

 

지난 [파이썬 기초 #3]에서는 변수의 자료형수치 자료형문자열 자료형에 대해 알아봤는데요!! (수치/문자열 자료형에 대해 알고싶다면 →요기← 클릭!!)

 

오늘은 변수의 자료형리스트/튜플/세트 자료형에 대해 알아보려 합니다.

 

리스트/튜플/세트 자료형괄호를 사용한다는 공통점이 있는데요!!

 

지금부터 리스트/튜플/세트 자료형에 대해 알아보러 갈까요??

 

리스트 자료형

 

리스트 자료형대괄호 안에 값(원소)들을 나열한 배열 형태의 변수를 의미합니다.

 

 

리스트 자료형의 값들은 순서를 나타내는 인덱스라는 것을 가지고 있는데요.

 

앞에서부터는 0, 1, 2, ...의 인덱스를 가지며, 뒤에서부터는 -1, -2, -3의 인덱스를 가집니다.

 

 

 

index 함수를 사용하면 특정 값의 인덱스가 무엇인지 검색할 수 있는데요.

 

[리스트].index( [검색할 값], ([검색을 시작할 인덱스]), ([검색을 마칠 인덱스]) )

 

예를 들어, 위의 a라는 리스트에서 3의 인덱스를 알고싶다면 아래와 같이 입력하면 됩니다.

 

a = [1,2,3,4]

a.index(3)

 

 

반대로 인덱스를 사용하여 특정 인덱스의 값이 무엇인지 검색할 수 있는데요.

 

a라는 리스트에서 세번째 값이 무엇인지 알고싶다면 아래와 같이 입력하면 됩니다.

 

a = [1,2,3,4]

a[2]

 

 

이렇게 인덱스를 사용하여 특정 순서의 값을 반환하는 것을 인덱싱이라고 합니다.

 

또한, 인덱스를 사용하여 특정 순서에서 특정 순서까지의 값을 검색할 수 있는데요.

 

예를 들어, a라는 리스트에서 뒤에서 두번째부터의 값을 검색하려면 아래와 같이 입력하면 됩니다.

 

a = [1,2,3,4]

a[-2:]

 

 

이처럼 인덱스를 사용하여 특정 순서에서 특정 순서까지의 값을 반환하는 것을 슬라이싱이라고 합니다.

 

튜플 자료형

 

튜플 자료형소괄호 안에 값(원소)들을 나열한 변수를 의미합니다.

 

리스트와 형태가 매우 비슷하지만, 읽기 전용인 변수이기 때문에 속도가 빠르다는 장점을 가지고 있습니다.

 

대신 읽기 전용인만큼 사용할 수 있는 함수가 적어 활용도 측면에서는 리스트보다 부족합니다.

 

 

튜플에 속한 값들도 인덱스를 가지고 있기 때문에 리스트처럼 인덱싱슬라이싱이 가능합니다.

 

 

세트 자료형

 

세트 자료형중괄호에 값들을 나열한 형태의 변수로, 수학의 집합과 동일합니다.

 

 

따라서 수학과 동일하게 합집합, 교집합, 차집합을 구할 수 있는데요.

 

union 함수를 사용하거나 '|'를 사용하면 합집합을 구할 수 있으며, intersection 함수'&'를 사용하면 교집합을 구할 수 있습니다.

 

합집합: [세트1].union( [세트2] )

교집합: [세트1.intersection( [세트2] )

 

차집합'-'를 사용하면 구할 수 있습니다.

 

c = {1, 2, 3, 4}
d = {1, 2, 5, 6}

# 합집합 구하기
c.union(d)
c|d

# 교집합 구하기
c.intersection(d)
c&d

# 차집합 구하기
c-d

 

 

세트 자료형리스트 자료형이나 튜플 자료형과는 다르게 값들에 인덱스가 없기 때문에 인덱싱이나 슬라이싱은 불가능합니다.

 

 

자료형 변환

 

[파이썬 기초 #3]에서 알아본 문자열 자료형list 함수tuple 함수를 사용하면 리스트 자료형튜플 자료형으로 변환 가능한데요!

 

문자열 자료형 → 리스트 자료형: list( [문자열 자료형] )

문자열 자료형 →튜플자료형:tuple([ 문자열 자료형] )

 

문자 하나하나가 리스트 자료형튜플 자료형의 값(원소)으로 들어가게 됩니다.

 

 


 

지금까지 변수의 자료형리스트, 튜플, 세트 자료형에 대해 알아봤는데요!!

 

인덱스라는 개념이 생소하겠지만, Python을 하는데 있어 가장 기본이 되면서도 많이 사용되기 때문에 천천히 따라하면서 이해하는 것을 추천드립니다.

 

만약 이해 안되는 것이 있다면 편하게 댓글로 남겨주세요!!

 

다음 [파이썬 기초]에서는 변수의 자료형 중 마지막으로 딕셔너리부울 자료형에 대해 알아보겠습니다!!

 

지금까지 긴 글 읽어주셔서 감사하구요!!

 

이상 이것저것 관심많은 포푸리였습니다.

댓글