리스트의 각 숫자를 첫 번째 요소로, 해당 숫자의 제곱을 두 번째 요소로 하는 튜플 리스트를 만들어야 하는 경우가 있습니다. 이럴 때 리스트 컴프리헨션(list comprehension)을 활용하면 코드 한 줄로 간결하게 처리할 수 있습니다.
아래는 그 구현 예시입니다.
예제 코드
my_list = [23, 42, 67, 89, 11, 32]
print("리스트는 다음과 같습니다:")
print(my_list)
print("결과 튜플 리스트:")
my_result = [(val, pow(val, 2)) for val in my_list]
print(my_result)실행 결과
리스트는 다음과 같습니다: [23, 42, 67, 89, 11, 32] 결과 튜플 리스트: [(23, 529), (42, 1764), (67, 4489), (89, 7921), (11, 121), (32, 1024)]
코드 설명
- 먼저 정수들이 담긴 리스트를 정의하고, 콘솔에 출력합니다.
- 리스트 컴프리헨션을 사용해 리스트의 각 요소를 순회하며, 내장 함수
pow(val, 2)를 호출해 각 숫자의 제곱값을 계산합니다. - 각 반복마다
(원래 값, 제곱값)형태의 튜플이 생성되고, 이 튜플들이 모여 새로운 리스트가 만들어집니다. - 최종 결과 리스트를 콘솔에 출력합니다.
참고: 대안적인 방법
pow() 함수 대신 거듭제곱 연산자인 **를 사용할 수도 있습니다. 예를 들어 [(val, val ** 2) for val in my_list]처럼 작성하면 동일한 결과를 얻으며, 일반적으로 더 파이썬다운 표현으로 여겨집니다.