Python Zip: Compress and Extract Files Effortlessly
Python zip - это встроенная функция, которая объединяет элементы нескольких итерируемых объектов в кортежи. Она принимает произвольное количество аргументов, каждый из которых должен быть итерируемым.
Вот пример использования функции zip():
list1 = [1, 2, 3]
list2 = ['a', 'b', 'c']
zipped = zip(list1, list2)
print(list(zipped))
В данном примере из двух списков list1 и list2 создается список кортежей, содержащих соответствующие элементы из обоих списков:
[(1, 'a'), (2, 'b'), (3, 'c')]
Также zip() можно использовать со строками:
string1 = 'abc'
string2 = 'def'
zipped = zip(string1, string2)
print(list(zipped))
Результат такого запуска будет следующим:
[('a', 'd'), ('b', 'e'), ('c', 'f')]
Кроме того, функцию zip() можно использовать для объединения списков разной длины, при этом кортежи будут содержать только элементы, которые имеют соответствующие индексы в каждом из списков:
list1 = [1, 2, 3]
list2 = ['a', 'b']
zipped = zip(list1, list2)
print(list(zipped))
Результат содержит только 2 элемента, соответствующих общим индексам:
[(1, 'a'), (2, 'b')]
Также функция zip() может принимать несколько итерируемых объектов:
list1 = [1, 2, 3]
list2 = ['a', 'b', 'c']
list3 = ['x', 'y', 'z']
zipped = zip(list1, list2, list3)
print(list(zipped))
Результатом будет список кортежей, содержащих по одному элементу из каждого списка:
[(1, 'a', 'x'), (2, 'b', 'y'), (3, 'c', 'z')]
Использование функции zip() позволяет элегантно решать задачи, связанные с параллельной обработкой нескольких списков.