튜플로 이루어진 리스트에서 연속된 요소 간의 특정 열 차이를 구해야 하는 경우가 있습니다. 이럴 때는 리스트를 반복(iteration)하면서 abs 메서드와 append 메서드를 활용하면 간단하게 해결할 수 있습니다.
abs 메서드는 값의 절댓값, 즉 양수 값을 반환하며, append 메서드는 리스트에 새로운 요소를 추가하는 역할을 합니다.
예제 코드
my_list = [(67, 89, 32), (11, 23, 44), (65, 75, 88)]
print("리스트 출력 : ")
print(my_list)
print("K 값이 초기화되었습니다")
K = 1
my_result = []
for idx in range(0, len(my_list) - 1):
my_result.append(abs(my_list[idx][K] - my_list[idx + 1][K]))
print("결과 리스트 : ")
print(my_result)실행 결과
리스트 출력 : [(67, 89, 32), (11, 23, 44), (65, 75, 88)] K 값이 초기화되었습니다 결과 리스트 : [66, 52]
코드 설명
먼저 튜플로 구성된 리스트를 정의하고, 콘솔에 출력합니다.
비교할 열의 위치인 K 값을 초기화하고 화면에 표시합니다.
결과를 저장할 빈 리스트를 하나 생성합니다.
튜플 리스트를 순회하면서 인접한 두 튜플의 K번째 열 값 차이를 계산합니다.
abs함수로 절댓값을 구한 뒤, 그 결과를append를 사용해 빈 리스트에 추가합니다.마지막으로 최종 결과 리스트를 콘솔에 출력합니다.
위 예제에서는 K = 1이므로 각 튜플의 두 번째 요소(89, 23, 75)를 기준으로 인접한 값들의 차이인 |89 − 23| = 66과 |23 − 75| = 52가 결과로 반환됩니다. 이 방식은 데이터 분석 시 시계열 변화량을 계산하거나, 특정 열의 연속적인 변화를 추적할 때 유용하게 활용할 수 있습니다.