📘 Jump to Python
02 파이썬 프로그래밍의 기초, 자료형
02-4 튜플 자료형
- 튜플은 어떻게 만들까?
- 튜플의 요솟값을 지우거나 변경하려고 하면 어떻게 될까?
- 튜플 요솟값을 삭제하려 할 때
- 튜플 요솟값을 변경하려 할 때
- 튜플 다루기
- 인덱싱하기
- 슬라이싱 하기
- 튜플 더하기
- 튜플 곱하기
- 튜플 같이 구하기
튜플
- 리스트는 [], 튜플은 ()로 둘러싼다.
- 리스트는 요솟값의 생성, 삭제, 수정이 가능하지만 → 튜플은 요솟값을 바꿀 수 없다.
1. 튜플은 어떻게 만들까?
t1 = ()
t2 = (1,)
t3 = (1, 2, 3)
t4 = 1, 2, 3
t5 = ('a', 'b', ('ab', 'cd'))
- t2 : 단지 1개의 요소만을 가질 때는 요소 뒤에 쉼표(,)를 반드시 붙여야 한다.
- t4 : 소괄호를 생략해도 데이터 타입은 튜플로 된다.
- 프로그램이 실행되는 동안 요솟값이 항상 변하지 않기를 바랄 때와 값이 바뀔까 걱정하고 싶지 않을 때 쓴다.
2. 튜플의 요솟값을 지우거나 변경하려고 하면 어떻게 될까?
→ 튜플은 요솟값을 한 번 정하면 지우거나 변경할 수 없다.
2.1. 튜플 요솟값을 삭제하려 할 때
# del 함수로 튜플 지우기 시도
t1 = (1, 2, 'a', 'b')
del t1[0]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'tuple' object doesn't support item deletion
2.2. 튜플 요솟값을 변경하려 할 때
# 요솟값을 변경하려 시도
t1 = (1, 2, 'a', 'b')
t1[0] = 'c'
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment
위에와 같이 튜플은 삭제 및 변경이 불가능하다는 것을 알 수 있다.
3. 튜플 다루기
3.1. 인덱싱 하기
t1 = (1, 2, 'a', 'b')
print(t1[0])
1
print(t1[3])
'b'
- 문자열, 리스트와 마찬가지로 t1[0], t1[3]처럼 인덱싱이 가능하다.
3.2. 슬라이싱 하기
t1 = (1, 2, 'a', 'b')
print(t1[1:])
(2, 'a', 'b')
- 슬라이싱도 가능하다.
3.3. 튜플 더하기
t1 = (1, 2, 'a', 'b')
t2 = (3, 4)
t3 = t1 + t2
print(t3)
(1, 2, 'a', 'b', 3, 4)
- t1, t2 튜플의 요솟값이 바뀐 것이 아니라 새로운 t3의 튜플이 생긴 것이다.
3.4. 튜플 곱하기(반복)
t2 = (3, 4)
t3 = t2 * 3
print(t3)
(3, 4, 3, 4, 3, 4)
- t2 튜플의 요솟값이 바뀐 것이 아니라 새로운 t3의 튜플로 3번 반복되어 생겼다.
3.5. 튜플 길이 구하기
len()
t1 = (1, 2, 'a', 'b')
print(len(t1))
4
튜플은 요솟값을 변경할 수 없기 때문에 .sort(), .insert(), .remove(), .pop() 등의 내장 함수가 없다.
'공부 > Python 공부' 카테고리의 다른 글
[Python] 파이썬 프로그래밍의 기초, 자료형_리스트 자료형 (0) | 2025.01.08 |
---|---|
[Python] 파이썬 프로그래밍의 기초, 자료형_숫자형 (0) | 2025.01.06 |
[Python] 모듈의 사용(import) (0) | 2025.01.03 |
[Python] Python 표준 입출력, 표준 입력 (0) | 2025.01.03 |
[Python] Python 표준 입출력, 표준 출력 (1) | 2025.01.02 |