Python: 자료형 튜플 (tuple)
tuple : 튜플
- 튜플은 () 를 이용한다.
- 튜플은 튜플 안의 값을 변경할 수 없다.
- 튜플의 선언은 다음과 같다
t1 = ()
t2 = (1,)
t3 = (1, 2, 3)
t4 = 1, 2, 3
t5 = (1, 2, ("a", "b"))
- 튜플을 선언할 때 요소가 1개만 들어간다면 반드시 뒤에 콤마(,)를 붙여줘야 한다.
- 튜플 안의 값을 바꿀 수 없기 때문에, 변하지 않아야 할 값을 넣는다.
- 튜플도 리스트나 문자열과 같이 인덱싱, 슬라이싱, 더하기, 곱하기 연산이 가능하다.
- 튜플 안의 값을 변경 혹은 삭제를 하려고 할 때는 에러가 발생한다.
name = "a"
id = "123"
pw = "a123"
print(name, id, pw) # a 123 a123
t1 = (name, id, pw)
print(t1) # ('a', '123', 'a123')
name = "b"
print(t1) # ('a', '123', 'a123') - 튜플 안의 내용은 변하지 않는다.
print(name) # b - 전역에 선언한 변수의 값은 바뀌어 있다.
# 기존 값 수정할 때 에러 발생
t1[0] = "b" # TypeError: 'tuple' object does not support item assignment
# 기존 값 삭제하려 할 때 에러 발생
del t1[0] # TypeError: 'tuple' object doesn't support item deletion
튜플은 언제 사용할까
t1 = ()
t2 = (1,)
t3 = (1, 2, 3)
t4 = 1, 2, 3
t5 = (1, 2, ("a", "b"))
name = "a"
id = "123"
pw = "a123"
print(name, id, pw) # a 123 a123
t1 = (name, id, pw)
print(t1) # ('a', '123', 'a123')
name = "b"
print(t1) # ('a', '123', 'a123') - 튜플 안의 내용은 변하지 않는다.
print(name) # b - 전역에 선언한 변수의 값은 바뀌어 있다.
# 기존 값 수정할 때 에러 발생
t1[0] = "b" # TypeError: 'tuple' object does not support item assignment
# 기존 값 삭제하려 할 때 에러 발생
del t1[0] # TypeError: 'tuple' object doesn't support item deletion
일반적으로 2개에서 5개 사이의 요소들을 저장할 때 사용되며, 특정 데이터를 ad hoc(즉석)하게 표현하고 싶을 때 사용한다. 예를 들어, 좌표값을 표현할 때 튜플을 사용한다면 유용하다.
튜플은 주로 리스트와 같이 사용하여, 리스트의 요소들로 튜플을 채운다.
리스트도 똑같은 데이터를 만들 수 있지만, 튜플이 더 효과적이다.
- List 는 수정 가능, 여러 수의 요소들을 저장할 수 있기 때문에 tuple 보다 메모리 용량을 많이 차지한다.
- Tuple 은 제한적인 만큼 용량이 더 적다. 그래서 수정이 필요없고 간단한 형태의 데이터를 사용할 때는 tuple을 사용한 것이 훨씬 효과적이다.
튜플 조작하기
index(x)
- 튜플에서 특정 값의 인덱스를 구한다.
- 이 때 값이 여러 개일 경우 처음 찾은 인덱스를 구한다.
count(x)
- 튜플에서 특정 값의 개수를 구한다.
tuple(식 for 변수 in 리스트 if 조건식)
- 튜플 표현식
- () 안에 표현식을 넣으면 제너레이터 표현식이 된다.
Author And Source
이 문제에 관하여(Python: 자료형 튜플 (tuple)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@pm1100tm/Python-자료형-튜플-tuple저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)