본문 바로가기
코딩 연습/코딩배우기

[python] 파이썬 내장함수 zip()에 대해

by good4me 2020. 9. 3.

goodthings4me.tistory.com

 

■ zip()은 동일한 개수로 이루어진 자료형을 묶어 튜플로 만드는 함수이다.

lzip = zip(['a', 'b', 'c'], [1, 2, 3])  # 리스트
tzip = zip(('a', 'b', 'c'), (1, 2, 3))  # 튜플
szip = zip('abc', (1, 2, 3))  # 문자열과 튜플

print(lzip)  # zip 반환 객체는 iteable 객체임
# <zip object at 0x0000017287E45140>

for i in lzip: # tzip, szip / 3가지 모두 동일하게 튜플 출력 
    print(i)

'''
('a', 1)
('b', 2)
('c', 3)
'''


 # 반환 형태 변환도 가능
 
 # 반환되는 튜플을 리스트로 만듦
print(list(zip(['a', 'b', 'c'], [1, 2, 3]))) 
# [('a', 1), ('b', 2), ('c', 3)]

# 튜플에 담는다
print(tuple(zip(['a', 'b', 'c'], [1, 2, 3]))) 
# (('a', 1), ('b', 2), ('c', 3))

# dict로 만들기
print(dict(zip(['a', 'b', 'c'], [1, 2, 3])))  
# {'a': 1, 'b': 2, 'c': 3}


# 셋 이상의 값 조합
lst = list(zip('일이삼', (1, 2, 3), ['one', 'two', 'three']))
print(lst)
# [('일', 1, 'one'), ('이', 2, 'two'), ('삼', 3, 'three')]

 

[참고자료] 윤성우의 열혈파이썬 중급편

 

good4me.co.kr

댓글