Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Python 튜플 리스트에서 마지막 요소만 추출하는 방법

튜플로 구성된 리스트에서 각 튜플의 마지막 요소를 추출해야 하는 경우, 리스트 컴프리헨션(list comprehension)음수 인덱싱(negative indexing)을 활용하면 매우 간단하게 처리할 수 있습니다.

리스트 컴프리헨션은 리스트를 반복(iteration)하면서 특정 연산을 수행할 수 있도록 해주는 파이썬의 축약 문법입니다. 별도의 반복문을 여러 줄로 작성하지 않고도 한 줄로 깔끔하게 표현할 수 있어 가독성과 효율성이 뛰어납니다.

참고로 파이썬의 리스트(list)는 정수, 실수, 문자열 등 서로 다른 자료형(heterogeneous)의 값을 하나의 자료구조에 함께 저장할 수 있습니다. 그리고 '튜플의 리스트'란 이름 그대로 리스트 안에 여러 개의 튜플이 담겨 있는 구조를 의미합니다.

예제 코드

아래 예제는 튜플 리스트에서 각 튜플의 마지막 요소만 추출하여 새로운 리스트를 만드는 과정을 보여줍니다.

my_list = [('Will', 67, 45), ('Jam', 34, 56), ('Pow', 99, 123), ('Nyk', 0, 56)]

print("튜플로 이루어진 리스트 : ")
print(my_list)

my_result = [lis[-1] for lis in my_list]

print("마지막 요소만 추출한 결과 리스트 : ")
print(my_result)

실행 결과

튜플로 이루어진 리스트 :
[('Will', 67, 45), ('Jam', 34, 56), ('Pow', 99, 123), ('Nyk', 0, 56)]
마지막 요소만 추출한 결과 리스트 :
[45, 56, 123, 56]

코드 설명

  • 먼저 여러 개의 튜플을 담은 리스트를 생성하고, 콘솔에 출력합니다.
  • 리스트 컴프리헨션을 사용해 튜플 리스트를 순회하며, 인덱스 -1(음수 인덱싱)로 각 튜플의 마지막 요소에 접근합니다.
  • 추출된 값들은 새로운 리스트로 만들어져 변수 my_result에 저장됩니다.
  • 최종적으로 해당 변수의 내용을 콘솔에 출력합니다.

음수 인덱싱이란?

파이썬에서 인덱스 -1은 시퀀스의 마지막 요소를 의미하고, -2는 뒤에서 두 번째 요소를 의미합니다. 따라서 튜플의 길이를 일일이 계산하지 않고도 lis[-1] 한 줄로 마지막 값을 손쉽게 가져올 수 있습니다.

만약 첫 번째 요소가 필요하다면 lis[0], 두 번째 요소라면 lis[1]처럼 양수 인덱스를 사용하면 됩니다.