TGViewer
Библиотека питониста | Python, Django, Flask Библиотека питониста | Python, Django, Flask @pyproglib · 37.4K subscribers
Post #7741 2.25K
👇 Альтернативы `break` в Python, которые делают код чище

break — полезная штука, когда нужно досрочно выйти из цикла. Но во многих случаях код можно сделать более читаемым и “питоничным”, используя встроенные инструменты Python.

Вот несколько частых сценариев.

1. Проверить, есть ли значение в коллекции

Вместо цикла с break:

is_purple = False
for color in colors:
if color == "purple":
is_purple = True
break


Используйте in:

is_purple = "purple" in colors


Проще, короче и зачастую быстрее.

2. Проверить, подходит ли хотя бы один элемент

Было:

has_big_score = False
for score in scores:
if score > 100:
has_big_score = True
break


Стало:

has_big_score = any(
score > 100
for score in scores
)

А если нужно проверить, что все элементы подходят — используйте all().

3. Найти первый подходящий элемент

Вместо:

first_long_word = None

for word in words:
if len(word) > 4:
first_long_word = word
break


Можно:

first_long_word = next(
(word for word in words if len(word) > 4),
None
)


next() + generator expression позволяют сразу взять первое совпадение.

4. Собирать элементы, пока условие истинно

Было:

result = []

for item in items:
if not item:
break
result.append(item)


Стало:

from itertools import takewhile

result = list(takewhile(bool, items))


takewhile() собирает элементы, пока условие возвращает True.

Мини-шпаргалка:
✅ Проверить наличие → in
✅ Хоть один подходит → any()
✅ Все подходят → all()
✅ Найти первое совпадение → next()
✅ Собирать до условия → itertools.takewhile()

📍 Навигация: ВакансииЗадачиСобесы

Библиотека питониста

#буст
  • ❤ 8
  • 👍 4
  • 🔥 3
More from @pyproglib
  1. Sep 20, 2026👻 94% токенов уходят не на код Анализ запусков показал: основная часть токенов уходит на…
  2. Sep 19, 2026📚Напоминаем про наш полный курс «Самоучитель по Python для начинающих» Мы написали и собр…
  3. Sep 15, 2026😭 Как не потратить недельный лимит AI-кодинга за три дня? Разберём на вебинаре, как трати…
  4. Sep 15, 2026⏱️ Справочник по Big-O в Python Для тех, кто хочет писать не просто работающий, а эффектив…
  5. Sep 14, 2026🤪 Если бы можно было задать один вопрос про AI в разработке — что бы вы спросили? Как выб…
  6. Sep 13, 2026🌸 Вселенная намекает: пора уже начать этот курс С 14 сентября цены в Proglib Academy выра…
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 →