From 124b0f027df4b2e3fde7e10af823322f62b40050 Mon Sep 17 00:00:00 2001 From: Vadim Nifadev <36514612+nifadyev@users.noreply.github.com> Date: Wed, 24 Apr 2024 11:58:51 +0300 Subject: [PATCH] Translate goto, but why? example --- translations/README-ru.md | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/translations/README-ru.md b/translations/README-ru.md index 2d87996..27e2585 100644 --- a/translations/README-ru.md +++ b/translations/README-ru.md @@ -2944,3 +2944,33 @@ Sshh... It's a super-secret. + Это еще не все. Внутри пасхального яйца находится **еще одно пасхальное яйцо**. Если вы посмотрите на [код](https://github.com/python/cpython/blob/master/Lib/antigravity.py#L7-L17), там определена функция, которая якобы реализует [алгоритм геохашинга XKCD](https://xkcd.com/426/). --- + + +### ▶ `goto`, но почему? + + +```py +from goto import goto, label +for i in range(9): + for j in range(9): + for k in range(9): + print("I am trapped, please rescue!") + if k == 2: + goto .breakout # выход из глубоко вложенного цикла +label .breakout +print("Freedom!") +``` + +**Результат (Python 2.3):** +```py +I am trapped, please rescue! +I am trapped, please rescue! +Freedom! +``` + +#### 💡 Объяснение: +- Рабочая версия `goto` в Python была [анонсирована](https://mail.python.org/pipermail/python-announce-list/2004-April/002982.html) в качестве первоапрельской шутки 1 апреля 2004 года. +- В текущих версиях Python этот модуль отсутствует. +- Хотя он работает, но, пожалуйста, не используйте его. Вот [причина](https://docs.python.org/3/faq/design.html#why-is-there-no-goto) того, почему `goto` отсутствует в Python. + +---