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

Python에서 튜플 리스트의 각 튜플을 뒤집는 방법

튜플 리스트(list of tuples)에서 각 튜플을 뒤집어야 할 때는 음수 스텝 슬라이싱(negative step slicing)을 활용하면 매우 간단하게 해결할 수 있습니다.

리스트는 정수, 실수, 문자열 등 서로 다른 자료형의 값들을 함께 저장할 수 있는 자료구조입니다. 튜플 리스트란 하나의 리스트 안에 여러 개의 튜플이 포함된 형태를 말합니다.

음수 슬라이싱은 양수 인덱스 대신 음수 인덱스를 사용하여 요소에 접근하는 방식입니다. 특히 [::-1]과 같이 스텝 값을 -1로 지정하면 시퀀스 전체를 역순으로 뒤집을 수 있습니다.

예제 코드

def reverse_tuple(my_tuple):
    return [tup[::-1] for tup in my_tuple]

my_list = [(21, 22), (43, 74, 45), (76, 17, 98, 19)]
print("The list of tuples is ")
print(my_list)
print(reverse_tuple(my_list))

실행 결과

The list of tuples is
[(21, 22), (43, 74, 45), (76, 17, 98, 19)]
[(22, 21), (45, 74, 43), (19, 98, 17, 76)]

코드 설명

  • 'reverse_tuple'이라는 이름의 함수를 정의하고, 튜플 리스트를 매개변수로 받도록 합니다.
  • 함수 내부에서는 리스트 컴프리헨션으로 매개변수를 순회하며, '::' 연산자와 음수 인덱싱(-1 스텝)을 사용해 각 튜플의 요소를 마지막부터 거꾸로 반환합니다.
  • 여러 개의 튜플을 담은 리스트를 정의한 뒤 콘솔에 출력합니다.
  • 앞서 정의한 사용자 함수를 호출하면서 해당 튜플 리스트를 인자로 전달합니다.
  • 각 튜플이 뒤집힌 최종 결과가 콘솔에 출력됩니다.

이처럼 [::-1] 슬라이싱 기법을 사용하면 별도의 반복문이나 복잡한 로직 없이 한 줄의 코드로 튜플 리스트의 모든 튜플을 손쉽게 뒤집을 수 있습니다.