728x90
반응형
zip()은 동일한 개수로 이루어진 반복 가능한(iterable) 자료형을 같은 인덱스끼리 묶어주는 역할을 하는 함수이다.
사용 예제
- 출력
a = [1, 2, 3, 4, 5]
b = ['a', 'b', 'c', 'd', 'e']
for i, j in zip(a,b):
print(i, j)
>> 1 a
2 b
3 c
4 d
5 e
- * = Unpack
*는 리스트를 Unpack해준다.
만약, A = [[1, 2], [3, 4], [5, 6]]가 있을 때 B = [(1, 3, 5), (2, 4, 6)]를 *를 사용하여 만들 수 있다.
A = [[1, 2], [3, 4], [5, 6]]
B = list(zip(*A))
print(B)
>> [(1, 3, 5), (2, 4, 6)]
- 주의 할 점
A = [[1, 2], [3, 4], [5, 6]]
B = list(zip(A))
print(B)
>> [([1, 2],), ([3, 4],), ([5, 6],)]
이렇게 A를 Unpack하지 않고 zip해주면 이런 결과가 출력되므로 실수하지 않도록 주의한다.
- 리스트형
a = [1, 2, 3, 4, 5]
b = ['a', 'b', 'c', 'd', 'e']
print(list(zip(a,b)))
>> [(1, 'a'), (2, 'b'), (3, 'c'), (4, 'd'), (5, 'e')]
- 딕셔너리형
a = [1, 2, 3, 4, 5]
b = ['a', 'b', 'c', 'd', 'e']
dic = {}
for i, j in zip(a, b):
dic[i] = j
print(dic)
>> {1: 'a', 2: 'b', 3: 'c', 4: 'd', 5: 'e'}
활용 문제
728x90
반응형
'Python > 내장 함수' 카테고리의 다른 글
replace, rjust, ljust, zfill (0) | 2021.02.09 |
---|---|
count, len (0) | 2021.01.21 |
bin, oct, hex (0) | 2021.01.21 |
upper, lower, capitalize, title (0) | 2021.01.09 |