zip 모듈은 파이썬에서 리스트나 튜플 등 여러개의 iterable 객체를 묶어서 각 iterable의 같은 위치에 있는 원소들을 하나씩 묶어서 튜플의 형태로 반환하는 함수입니다. 이를 이용하면 여러 리스트의 데이터를 쉽게 묶어서 처리할 수 있습니다.
1. 예제 코드
아래는 zip 모듈을 사용하는 예시 코드입니다.
list1 = [1, 2, 3, 4]
list2 = ['a', 'b', 'c', 'd']
list3 = [10, 20, 30, 40]
# zip 함수를 사용하여 리스트 묶기
zipped_list = zip(list1, list2, list3)
# 결과 확인
print(list(zipped_list))
위 코드를 실행하면 (1, 'a', 10), (2, 'b', 20), (3, 'c', 30), (4, 'd', 40)와 같은 튜플의 리스트가 출력됩니다.
zip 함수는 2개 이상의 iterable 객체를 전달할 수 있으며, 각 iterable 객체는 같은 개수의 원소를 가지고 있어야 합니다. 만약 원소의 개수가 다르면, 가장 적은 개수의 원소를 가진 iterable의 개수에 맞춰서 결과가 반환됩니다.
zip 함수의 결과는 iterator 형태이므로, list()나 for 루프 등을 이용하여 값을 확인할 수 있습니다.
2. 주의할점
zip 함수를 사용할 때 주의해야 할 점은 다음과 같습니다.
1) zip 함수는 iterator를 반환합니다.
zip 함수는 두 개 이상의 iterable 객체를 묶어서 iterator를 반환합니다. 따라서 결과를 확인하기 위해서는 list()나 for 루프 등을 이용하여 iterator를 반복해서 값을 가져와야 합니다.
2) 원소의 개수가 다른 iterable 객체를 묶을 경우, 결과의 길이는 가장 짧은 iterable의 길이에 맞춰집니다.
zip 함수는 각 iterable 객체에서 같은 위치에 있는 원소들을 묶어서 튜플의 형태로 반환합니다. 하지만 원소의 개수가 다른 iterable 객체를 묶을 경우, 결과의 길이는 가장 짧은 iterable의 길이에 맞춰집니다. 그러므로 예기치 않은 결과를 방지하기 위해 각 iterable 객체의 길이를 미리 확인해 주는 것이 좋습니다.
3) zip 함수의 반환값을 한번만 사용할 수 있습니다.
zip 함수의 반환값은 iterator이므로, 한번 사용하면 그 값을 다시 사용할 수 없습니다. 따라서 결과를 저장해 두려면 list()나 tuple() 등의 함수를 이용하여 iterator를 리스트나 튜플 등의 형태로 변환한 후 사용해야 합니다.
4) zip 함수를 사용할 때, 인자로 전달하는 iterable 객체는 수정할 수 없습니다.
zip 함수를 사용할 때 인자로 전달하는 iterable 객체는 수정할 수 없습니다. 만약 iterable 객체를 수정하면 zip 함수의 결과도 변경될 수 있으므로, 주의해야 합니다.
'라이브러리' 카테고리의 다른 글
[파이썬] Counter 모듈 사용법 (0) | 2023.03.20 |
---|---|
[파이썬] Static method, Class method 에 대해서 (0) | 2023.03.20 |
[파이썬] venv 가상환경 만들기 (0) | 2023.03.19 |
[파이썬] pprint 로 예쁘게 출력 (0) | 2023.03.19 |
[파이썬] 반올림, 올림, 내림 (round, ceil, floor) 방법 (0) | 2023.03.19 |