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

Python – 리스트 내 튜플 요소의 부호 변경 방법

리스트에 담긴 튜플의 요소 부호를 변경해야 하는 경우, 간단한 반복문과 abs 메서드, 그리고 append 메서드를 활용하면 손쉽게 처리할 수 있습니다.

예제 코드

아래는 실제 구현 예시입니다.

my_list = [(51, -11), (-24, -24), (11, 42), (-12, 45), (-45, 26), (-97, -4)]

print("The list is :")
print(my_list)

my_result = []
for sub in my_list:
   my_result.append((abs(sub[0]), -abs(sub[1])))

print("The result is :")
print(my_result)

출력 결과

The list is :
[(51, -11), (-24, -24), (11, 42), (-12, 45), (-45, 26), (-97, -4)]
The result is :
[(51, -11), (24, -24), (11, -42), (12, -45), (45, -26), (97, -4)]

코드 설명

  • 튜플로 구성된 리스트를 정의한 뒤 콘솔에 출력합니다.

  • 결과를 저장할 빈 리스트를 하나 생성합니다.

  • 반복문을 사용해 원본 리스트의 각 튜플을 순회합니다.

  • abs 메서드를 사용해 음수 요소의 절댓값을 구합니다. 위 예제에서는 첫 번째 요소는 양수로, 두 번째 요소는 음수로 부호를 통일했습니다.

  • 변환된 튜플을 append 메서드로 빈 리스트에 추가합니다.

  • 최종 결과 리스트를 콘솔에 출력합니다.

더 간결한 방법: 리스트 컴프리헨션

위 코드는 리스트 컴프리헨션(list comprehension)을 사용하면 한 줄로 더 간결하게 작성할 수 있습니다.

my_result = [(abs(a), -abs(b)) for a, b in my_list]
print(my_result)

이 방식은 가독성이 뛰어나고 성능 면에서도 유리하여, 실무에서 널리 사용되는 파이썬다운 관용구(idiom)입니다.