오늘도 개발

파이썬 튜플(Tuple) 본문

웹 프로그래밍/Python3

파이썬 튜플(Tuple)

Sueeeeeee 2022. 6. 4. 10:46

1.  튜플 생성 (= 튜플 패킹)

- 튜플 : 읽기 전용 리스트. 

리스트는 수정이 가능하지만, 튜플은 불가능 => 고정된 메모리 크기 사용하므로 리스트보다 성능 효율적

a = ()
b = (1, 2, 3)
c = tuple()

# 리스트와 다른 점 1) 요소가 하나일 때도 뒤에 콤마 붙여야 함
# d = (1)은 튜플이 아니라 값으로 취급
d = (1, )

# 리스트와 다른 점 2) 괄호 생략해도 됨
e = 1, 2, 3, 4

2. 튜플 다루기

인덱싱

첫 요소의 인덱스는 0, 끝 요소의 인덱스는 -1로 시작

a = (1, 2, 'a')
print(a[0])
# 1

 

슬라이싱

객체를 슬라이싱하면 원래 객체를 수정하는 것이 아니라 다른 주소에 새 객체를 생성한다.

그래서 튜플도 슬라이싱이 가능하다. 원래 객체를 수정하는 것이 아니기 때문이다.

a = (1, 2, 'a')

print(id(a))
# 4416679168

print(id(a[:2]))
# 4417000064

 

더하기, 곱하기

객체를 더하거나 곱해도 다른 주소에 새 객체를 생성하기 때문에 튜플도 연산이 가능하다.

a = (1, 2, 'a')
b = (3, 4, 5)

print(id(a))
# 4411960576

print(id(a + b))
# 4412164224

print(a + b)
# (1, 2, 'a', 3, 4, 5)

print(b * 2)
# (3, 4, 5, 3, 4, 5)

 

길이 구하기

a = (1, 2, 3)
print(len(a))
# 3

 

 

 

 

 

참고

점프 투 파이썬 - 02-4 튜플 자료형

'웹 프로그래밍 > Python3' 카테고리의 다른 글

파이썬 세트(Set)  (0) 2022.06.05
파이썬 딕셔너리(Dictionary)  (0) 2022.06.05
파이썬 리스트(List)  (0) 2022.06.03
파이썬의 출력 방법  (0) 2022.06.03
CPython이 변수를 처리하는 방법  (0) 2022.06.01