본문 바로가기
방구석코딩/파이썬 기초문법

[데이터 유형] 파이썬 튜플(tuple) 함수 이해

by 석세상 2023. 7. 24.
반응형

파이썬 튜플 함수 이해에 대해서 알아보도록 하겠습니다. 파이썬에서 튜플은 데이터 유형 중 하나로써 이 데이터 유형에 대해 알아보고 어떻게 핸들링 할 수 있는지에 대해서 배워보겠습니다.

파이썬, 튜플 함수 이해 및 사용법

 

 

데이터 유형 : 튜플이란

튜플은 파이썬에서 변경할 수 없는 데이터 유형입니다. 즉, 튜플이 생성되면 해당 요소를 수정할 수 없습니다.

 

리스트와 비슷하지만 리스트와 달리 튜플은 대괄호 대신 괄호로 묶습니다. 튜플은 숫자, 문자열, 부울 또는 다른 튜플을 포함하여 다양한 데이터 유형의 요소를 포함할 수 있습니다.

 

tuple() 함수

Python의 tuple() 함수는 반복 가능한 객체에서 튜플을 만드는 데 사용됩니다. 이터러블을 인수로 받아 이터러블의 요소를 포함하는 튜플을 반환합니다. 다음은 tuple() 함수의 구문입니다.

tuple(iterable)

iterable은 목록, 문자열, 범위 또는 기타 반복 가능한 객체가 될 수 있습니다. tuple() 함수가 호출되면 iterable의 요소를 반복하고 해당 요소로 튜플을 생성합니다.

 

 

tuple()을 사용하여 튜플 만들기

예제 1: 목록에서 튜플 생성

fruits_list = ["apple", "banana", "orange"]
fruits_tuple = tuple(fruits_list)

print(fruits_tuple)

이 예제에는 세 개의 요소가 포함된 "fruits_list"라는 목록이 있습니다. tuple() 함수를 호출하고 목록을 인수로 전달하여 동일한 요소를 포함하는 "fruits_tuple"이라는 튜플을 만듭니다.

 

"fruits_tuple" 값을 인쇄하면 출력은 'apple', 'banana' 및 'orange' 요소가 있는 튜플이 됩니다.

 

('apple', 'banana', 'orange')

 

 

예 2: 문자열에서 튜플 생성

name = "John"
name_tuple = tuple(name)

print(name_tuple)

이 예제에는 값이 "John"인 "name"이라는 문자열 변수가 있습니다. 문자열을 tuple() 함수에 전달하여 문자열의 각 문자가 튜플의 요소가 되는 "name_tuple"이라는 튜플을 만듭니다.

 

"name_tuple"의 값을 인쇄하면 출력은 'J', 'o', 'h' 및 'n' 요소가 있는 튜플이 됩니다.

 

('J', 'o', 'h', 'n')

 

튜플 요소 액세스 및 조작

목록과 유사하게 인덱싱 및 슬라이싱을 사용하여 튜플 요소에 액세스하고 조작할 수 있습니다.

그러나 튜플은 변경할 수 없기 때문에 개별 요소를 직접 수정할 수 없습니다. 몇 가지 예를 살펴보겠습니다.

 

예 3: 인덱싱을 사용하여 튜플 요소에 액세스

fruits = ("apple", "banana", "orange")

print(fruits[0]) # Accessing the first element
print(fruits[2]) # Accessing the third element

이 예제에는 세 가지 요소를 포함하는 "fruits"라는 튜플이 있습니다. 인덱싱을 사용하여 튜플의 개별 요소에 액세스할 수 있습니다.

 

fruits[0] 및 fruits[2]의 값을 인쇄하면 각각 '사과' 및 '오렌지'로 출력됩니다.

apple
orange

 

 

 

예제 4: 튜플 슬라이싱

Python의 튜플은 슬라이싱을 지원하므로 시작 및 끝 인덱스를 지정하여 튜플의 일부를 추출할 수 있습니다.

 

튜플을 자르면 선택한 요소를 포함하는 새 튜플이 반환됩니다. 예를 들면 다음과 같습니다.

fruits = ('apple', 'banana', 'cherry', 'durian', 'elderberry')

slice1 = fruits[1:4]
slice2 = fruits[:3]
slice3 = fruits[2:]

print(slice1) # Output: ('banana', 'cherry', 'durian')
print(slice2) # Output: ('apple', 'banana', 'cherry')
print(slice3) # Output: ('cherry', 'durian', 'elderberry')

이 예제에는 5개의 요소를 포함하는 fruits라는 튜플이 있습니다. 슬라이싱을 사용하여 튜플의 특정 부분을 추출합니다.

  • slice1은 인덱스 1에서 인덱스 4(제외)까지의 요소를 추출하여 ('banana', 'cherry', 'durian')이 됩니다.
  • slice2는 처음부터 인덱스 3(제외)까지 요소를 추출하여 ('apple', 'banana', 'cherry')가 됩니다.
  • slice3은 인덱스 2부터 끝까지 요소를 추출하여 ('cherry', 'durian', 'elderberry')가 됩니다.

시작 및 끝 인덱스를 지정하면 튜플에서 원하는 요소 하위 집합을 쉽게 추출할 수 있습니다.

튜플을 슬라이싱하면 새 튜플이 생성되고 원래 튜플이 수정되지 않는다는 점에 유의해야 합니다. 이는 튜플이 변경 불가능하기 때문입니다. 즉, 튜플이 생성된 후에 해당 요소를 변경할 수 없습니다.

 

슬라이싱은 또한 슬라이싱하는 동안 요소를 건너뛸 수 있는 단계 매개변수를 허용할 수 있습니다. 예를 들어:

numbers = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
slice4 = numbers[1:8:2]
print(slice4) # Output: (2, 4, 6, 8)

이 예에서 slice4는 인덱스 1부터 시작하여 인덱스 8(제외)까지 2단계로 요소를 추출합니다.

 

결과적으로 (2, 4, 6, 8)을 얻습니다.

 

튜플 슬라이싱은 필요에 따라 튜플의 특정 부분을 추출하는 방법을 제공합니다. 데이터 하위 집합으로 작업하고 개별적으로 작업을 수행할 수 있습니다.

728x90

 

요약

  • Python의 튜플은 시작 및 끝 인덱스를 지정하여 튜플의 일부를 추출할 수 있는 슬라이싱을 지원합니다.
  • 슬라이싱은 선택한 요소를 포함하는 새 튜플을 만듭니다.
  • 슬라이싱은 슬라이싱하는 동안 요소를 건너뛰기 위한 단계 매개변수를 허용할 수도 있습니다.

 

728x90
반응형

댓글