python
4. python, zip
장인이
2021. 1. 13. 22:14
두 개 이상의 list를 같이 출력하고 싶을 때는, zip함수를 사용하면 코드 개수도 줄어들고, 속도도 빠른 프로그램을 만들 수 있습니다.
ex)
list1 = list(range(10, 100))
list2 = list(range(20, 110))
for i in range(len(list1)):
print(list1[i], list2[i])
# zip 사용하지 않고 for문으로 print
이러면 코드의 길이도 길어지며, for문을 사용하게 되어 실행 시간이 길어집니다.
list1 = list(range(10, 100))
list2 = list(range(20, 110))
result = zip(list1, list2)
print(list(result))
# zip을 활용함
반대로 zip을 활용하면, for문을 사용할 필요가 없을 뿐더러, 실행 시간이 짧아집니다.
또한 zip되어있는 것을 다시 나누고 싶다면, 언패킹을 진행하면 됩니다.
# zip 이름이 result이라고 하면,
list1, list2 = zip(*pairs)
# 하면 2개의 tuple로 나누어짐
# 파이썬에서 *는 언패킹하는 개념이라고 생각하면 편리함