zip()을 활용한 list 더하기

이찬·2023년 8월 6일
0
post-thumbnail

zip() 사용하기

zip()은 이른바 zip 객체를 만들어 내주는 내장 함수입니다. zip 객체는 같은 길이의 두 늘어선 데이터에서 인덱스가 같은 요소끼리 튜플로 묶은 것을 나타냅니다. 상세한 내용은 다른 글을 참고하세요. 여기서는 간단한 예만 한 가지 들겠습니다.

zip 함수만 쓰면 그냥 객체의 저장 위치만 나옴

a = [1, 3, 5]
b = [2, 4, 6]
zip(a, b)
# >>> <zip object at 0x7c50efc8e840>
>>> a = [1, 3, 5]
>>> b = [2, 4, 6]
>>> list(zip(a, b))
[(1, 2), (3, 4), (5, 6)]
>>> tuple(zip(a, b))
((1, 2), (3, 4), (5, 6))

이 zip 객체를 이용하면 다음처럼 리스트의 요소들을 더할 수 있습니다.

# list_items_addition_zip_wo_compreshension.py
lo = range(10)
lp = range(10)
lo_lp = list()

for i, j in zip(lo, lp):
    lo_lp.append(i + j)
print(lo_lp)


# result
[0, 2, 4, 6, 8, 10, 12, 14, 16, 18]

여기에 리스트 컴프리헨션을 적용하면 다음처럼 코딩할 수 있습니다.

# list_items_addition_zip_with_compreshension.py
lo = range(10)
lp = range(10)
lo_lp = list()

lo_lp = [i + j for i, j in zip(lo, lp)]
print(lo_lp)


# result
[0, 2, 4, 6, 8, 10, 12, 14, 16, 18]
profile
Kyunghee univ. IE 21

0개의 댓글