TGViewer
Python Portal Python Portal @pythonportal · 50.3K subscribers
Post #6011 5.03K
В Python обычный zip() может незаметно «съесть» часть данных, если списки разной длины. 🐍

Например:
x = [1, 2, 3, 4, 5]
y = ['a', 'b', 'c']

list(zip(x, y))
# [(1, 'a'), (2, 'b'), (3, 'c')]


zip()
останавливается, как только заканчивается самый короткий список — поэтому 4 и 5 просто не попадут в результат.

Если нужно сохранить все элементы, есть itertools.zip_longest():
import itertools

list(itertools.zip_longest(x, y))
# [(1, 'a'), (2, 'b'), (3, 'c'), (4, None), (5, None)]


Недостающие значения он по умолчанию заполняет None.

Небольшая штука, но полезно помнить, когда объединяете данные из источников разной длины.

👉 @PythonPortal
  • 👍 13
  • ❤ 4
More from @pythonportal
  1. Oct 4, 2026Modern Robotics: Mechanics, Planning, and Control. Сохраните на потом. Это полноценный уче…
  2. Oct 4, 2026«Изучение математики. Почему память, практика и техника важнее таланта» Чтобы освоить мате…
  3. Oct 3, 2026«Как обучить нейросеть» — краткий конспект лекций курса MIT по глубокому обучению за 2024…
  4. Oct 3, 2026Tencent выпустила новую модель для перевода, которая, по их словам, обходит Google Transla…
  5. Oct 2, 2026Один из лучших ресурсов по производительности SQL: use-the-index-luke.com 👉 @PythonPortal
  6. Oct 2, 2026Многие постоянно путаются в этом: В чём на самом деле разница между 100 МБ/с и 100 Мбит/с?…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →