본문 바로가기

Python

Python - Tuple

튜플은 ( ) 로 감싸고, 요소끼리는 쉼표로 구분한다. 어떤 자료형이든 다 요소로 넣을 수 있다.

tup = (element1, element2, element3 ... )

 

한번 선언되면 수정, 순서 변경 및 삭제가 불가능하다.

괄호를 생략해도 된다. tup = 1, 2, 3

단 한 개의 요소만 가질 때는 요소 뒤에 쉼표를 반드시 붙여야 된다. tup = (1, )

단 한 개의 요소만 가지는데 쉼표를 안 붙이면 tuple이 되지 않는다. tup =(1)의 type은 int.

 

수정이 필요 없고 적은 수의 간단한 형태의 데이터를 표현할 때는 tuple을 사용하는 게 더 효과적이다.

특정 데이터를 임시/즉석으로(ad hoc) 표현하고 싶을 때 사용한다.

리스트의 요소로 튜플을 사용하는 방법이 유용한데, 같은 조건에서 리스트를 사용할 때 보다 차지하는 메모리 용량이 더 작기 때문이다.

튜플을 수정하고 싶을 땐 리스트로 변환해서 작업한 뒤 다시 튜플로 변환한다. 참고 링크

빈 튜플 만들기

새로 선언    tup = () 또는 tup = tuple()

튜플로 변환하기

tuple(iterable한 객체)로 변환 가능. 문자열 하나를 넣으면 알파벳 단위로 쪼개고, 리스트를 넣으면 각 요소가 튜플의 요소가 된다.

리스트 표현식처럼 생성할 수 있다.    tup = tuple(i for i in range(3))    이 방법에서는 반드시 tuple()을 사용해야 된다.

있는 값 확인

값이 있는지 확인    val in tup

값이 없는지 확인    val not in tup

특정 값의 index 반환    tup.index(val) 그 값이 여러개 있다면 첫번째 index를 반환함. 

리스트 길이 구하기    len(tup)

특정 element의 개수 구하기    tup.count(val)

확장

튜플끼리 합치기    + 

반복    (1, 2) * 3 -> (1, 2, 1, 2, 1, 2)

뽑아보기

특정 위치 하나만    index로 지정

범위 slicing    tup[start:stop:step]    start이상 stop 미만

두 변수의 값을 서로 바꾸기

튜플의 해체할당기능을 이용해 새로운 변수 없이 a, b의 값을 서로 바꾸기    a, b = b, a

여러 값을 한꺼번에 넘기기

함수에서 쓰이는 return a, b 이런 코드도 튜플을 이용하는 방법이다. 함수의 결과 값이 (a, b) 형태로 반환 된다.

이를 받아서 변수에 한꺼번에 할당할 수 있다. a, b를 반환하는 함수를 func라 한다면,

itsA, itsB = func()를 통해 itsA에 a를, itsB에 b를 넣을 수 있다.

 

 

참고 교재1

참고 교재2

참고 링크1

참고 링크2

참고 링크3

'Python' 카테고리의 다른 글

Python - Dictionary  (0) 2021.01.15
Python - Set  (0) 2021.01.15
Python - List  (0) 2021.01.14
Python - Function Parameters  (0) 2021.01.14
Python - String Formatting  (0) 2021.01.14