python zip함수

Language/Python

2015. 10. 19. 15:38

3개 이상의 이터레이터가능한 객체를 튜플형태의 쌍으로 묶음

 

-. 리스트 A,B를 zip함수를 이용하여 묶기

>>> A = [1,2,3]

>>> B = ['A','B','C']

>>> for i in zip(A,B):

             print(i)

(1, 'A')

(2, 'B')

(3, 'C')

 

-. zip()함수를 이용한 리스트 생성과 분리(*)

>>> re_L = list(zip(A,B)) #튜플의 쌍으로 이루어진 리스트

>>> re_L

[(1, 'A'), (2, 'B'), (3, 'C')]

>>> r_A,r_B = zip(*re_L#* 을 이용하여 zip함수로 생성된 리스트를 분리하여 다시 r_A,r_B에 저장

>>> r_A

(1, 2, 3)

>>> r_B

('A', 'B', 'C')

 

-. 2개 이상의 객체에 사용가능인자의 개수가 동일하지 때는 가장 적은갯수를 기준으로 합쳐지며나머지 값들은 포함되지 않음

>>> A = [1,2,3]

>>> B = ['A','B','C','D']

>>> C = [10,20,30,40,50]

>>> R_L = list(zip(A,B,C))

>>> R_L #A리스트의 개수가 3개 이므로 3개까지만 합쳐졌음

[(1, 'A', 10), (2, 'B', 20), (3, 'C', 30)]

출처 : http://blog.naver.com/dudwo567890/130150604340