중첩된 튜플에서 덧셈을 수행해야 하는 경우 'zip' 방식과 제너레이터 표현식을 사용할 수 있습니다.
Generator는 반복자를 만드는 간단한 방법입니다. '__iter__()' 및 '__next__()' 메서드가 있는 클래스를 자동으로 구현하고 내부 상태를 추적할 뿐만 아니라 반환될 수 있는 값이 없을 때 'StopIteration' 예외를 발생시킵니다.
zip 메서드는 iterable을 가져와 튜플로 집계하고 결과로 반환합니다.
아래는 동일한 데모입니다 -
예시
my_tuple_1 = ((7, 8), (3, 4), (3, 2)) my_tuple_2 = ((9, 6), (8, 2), (1, 4)) print ("The first tuple is : " ) print(my_tuple_1) print ("The second tuple is : " ) print(my_tuple_2) my_result = tuple(tuple(a + b for a, b in zip(tup_1, tup_2)) for tup_1, tup_2 in zip(my_tuple_1, my_tuple_2)) print("The tuple after summation is : ") print(my_result)
출력
The first tuple is : ((7, 8), (3, 4), (3, 2)) The second tuple is : ((9, 6), (8, 2), (1, 4)) The tuple after summation is : ((16, 14), (11, 6), (4, 6))
설명
- 2개의 중첩된 튜플/튜플의 튜플이 정의되어 콘솔에 표시됩니다.
- 압축되고 반복되며 중첩된 각 튜플의 모든 요소가 추가되고 새로운 튜플 튜플이 생성됩니다.
- 이 결과는 변수에 할당됩니다.
- 콘솔에 출력으로 표시됩니다.