신규 블로그를 만들었습니다!

2020년 이후부터는 아래 블로그에서 활동합니다.

댓글로 질문 주셔도 확인하기 어려울 수 있습니다.

>> https://bluemiv.tistory.com/

튜플 Tuple

튜플은 리스트와 거의 비슷합니다. 차이가 있다면 자료형을 선언할때 (, ) 소괄호를 사용한다는 점 입니다. 그리고 값을 추가, 수정, 삭제가 불가능하다는 것입니다. 이런 특징을 immutable(이뮤터블) 하다고 합니다. 반대로 리스트 자료형은 mutable(뮤터블) 하다고 합니다.

 

예를들어, 추가, 수정 삭제를 해보겠습니다.

# -*- coding : utf-8 -*-
myTuple = (1, 2, 3)
print(myTuple)

#myTuple.append(4)

#myTuple[0] = 4

#myTuple.remove(0)​

모두 오류가 발생합니다.

 

튜플의 특징

1. [,] 대신에 (,) 소괄호를 사용

2. 값을 바꿀수 없음 (추가, 수정, 삭제)

위 2가지를 제외한 나머지 부분은 리스트와 동일

 

이러한 특징 때문에 값의 변경을 원하지 않을때는 튜플을 사용하는 것이 좋습니다. 보통 평균적으로 리스트를 더 많이 사용하긴 하지만 튜플을 사용해야 할때도 있습니다.

 

튜플의 인덱싱과 슬라이싱

튜플의 값을 변화시킬수만 없을 뿐 다른 특징은 리스트와 비슷합니다. 기본적으로 튜플도 인덱싱과 슬라이싱이 가능합니다.

 

튜플의 인덱싱

myTuple = (1, 2, 3)
print(myTuple[0])
print(myTuple[1])
print(myTuple[2])​

 

튜플의 슬라이싱

myTuple = (1, 2, 3, 'a', 'b', 'c')
print('myTuple[0:]', myTuple[0:])
print('myTuple[1:]', myTuple[1:])
print('myTuple[1:2]', myTuple[1:2])
print('myTuple[:3]', myTuple[:3])
print('myTuple[::2]', myTuple[::2])​

 

튜플의 더하기, 곱하기

더하기와 곱하기 연산도 가능합니다. 더하기는 2개 이상의 튜플을 합칠때 사용합니다. 곱하기는 반복을 할 때 사용합니다.

 

더하기

myTuple1 = (1, 2, 3)
myTuple2 = ('a', 'b', 'c')

print(myTuple1 + myTuple2)
​

 

 

곱하기

myTuple = (1, 2, 3)

print(myTuple * 3)​

 

 

참고

정말 삭제할 수 없을까?

튜플을 삭제하는 방법이 없는것은 아닙니다. 다만 지우는것처럼 보일뿐 실제로 지우는것이 아니라 덮어씌는 방법이 있습니다. 예제로 살펴보겠습니다.

# -*- coding : utf-8 -*-
myTuple = (1, 2, 3)
print(myTuple)

myTuple = myTuple[1:]
print(myTuple)​

 

한마디로 "슬라이"을 이용한 편법입니다.

 

 

정말 값을 수정할 수 없을까?

위에서 튜플은 값을 추가를 할 수 없다고 했습니다. 하지만, 더하기 연산을 배웠으면 튜플을 추가하는 방법이 있습니다. 예제를 살펴보겠습니다.

myTuple = (1, 2, 3)
print('더하기 전:', myTuple)

myTuple = myTuple + (4,)
print('더한 후:', myTuple)​

 

실행환경

MAC OS X 운영체제

서브라임텍스트3

파이썬 3.7.0버전


관련된 글

2018/08/29 - [Language/Python] - Python :: 파이썬을 사용하는 이유? (프로그래밍 언어)

2018/08/30 - [Language/Python] - Python :: 파이썬 개발도구, IDLE 과 서브라임 텍스트 (설치 및 다운로드)

2018/08/30 - [Language/Python] - Python :: 파이썬을 계산기처럼 사용해보기

2018/08/31 - [Language/Python] - Python :: 파이썬의 숫자형 자료형(정수, 실수, 복소수, 8진수, 16진수)

2018/09/03 - [Language/Python] - Python :: 파이썬 문자열(string) 알아보기(이스케이프 문자, 인덱싱, 슬라이싱)

2018/09/08 - [Language/Python] - Python :: 파이썬 리스트(List) 사용방법과 여러가지 메소드

2018/10/03 - [Language/Python] - Python :: 파이썬 딕셔너리(Dictionary) 사전 개념 및 사용방법

2018/09/06 - [Language/Python] - Pycharm CE :: 맥북에 파이참 설치하기 (Python 파이썬 개발 도구)

 


Reference

https://wikidocs.net/15

 

위키독스

온라인 책을 제작 공유하는 플랫폼 서비스

wikidocs.net

 

  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기