튜플(tuple)은 프로그래밍에서 순서가 있는 여러 개의 요소를 묶어 하나의 데이터로 표현하는 자료구조이다. 튜플은 일반적으로 변경이 불가능(immutable)하며, 여러 요소를 포함할 수 있는 컨테이너 역할을 한다. 각 요소는 서로 다른 데이터 타입을 가질 수 있으며, 동일한 타입의 요소만 포함할 수도 있다.
튜플은 파이썬, 자바스크립트, C# 등 다양한 프로그래밍 언어에서 지원되며, 다른 자료구조와 비교했을 때 메모리 효율성이 높고, 불변성을 통해 데이터의 안전성을 제공한다. 튜플은 소괄호()로 묶여 표기하며, 요소는 쉼표로 구분된다. 예를 들어, (1, 2, 3) 또는 ('apple', 'banana', 'cherry')와 같이 정의한다.
튜플의 주요 특징 중 하나는 인덱싱이 가능하다는 점이다. 즉, 튜플의 각 요소는 0부터 시작하는 정수 인덱스를 사용하여 접근할 수 있다. 예를 들어, 튜플 t = (10, 20, 30)일 경우, t[0]은 10, t[1]은 20을 반환한다.
또한, 튜플은 여러 가지 유용한 메서드를 제공한다. 예를 들어, count() 메서드는 특정 요소의 빈도를 세고, index() 메서드는 특정 요소의 인덱스를 반환한다. 그러나 튜플의 불변성으로 인해 요소를 추가하거나 삭제하는 등의 변경 작업은 허용되지 않는다.
튜플은 다양한 상황에서 유용하게 사용된다. 함수의 반환값으로 여러 개의 값을 반환할 때, 데이터베이스의 행(row) 표현, 불변 데이터를 다룰 때 등에서 활용된다. 이처럼 튜플은 컴퓨터 과학 및 프로그래밍 언어에서 중요한 역할을 하는 기본적인 자료구조 중 하나이다.