From 8ab55b73931edc8e16c430090fc387178fb1740e Mon Sep 17 00:00:00 2001 From: Vadim Nifadev <36514612+nifadyev@users.noreply.github.com> Date: Wed, 24 Apr 2024 12:02:09 +0300 Subject: [PATCH] Translate Brace yourself example --- translations/README-ru.md | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/translations/README-ru.md b/translations/README-ru.md index 27e2585..b75c6f0 100644 --- a/translations/README-ru.md +++ b/translations/README-ru.md @@ -2974,3 +2974,31 @@ Freedom! - Хотя он работает, но, пожалуйста, не используйте его. Вот [причина](https://docs.python.org/3/faq/design.html#why-is-there-no-goto) того, почему `goto` отсутствует в Python. --- + + +### ▶ Держитесь! + +Если вы относитесь к тем людям, которым не нравится использование пробелов в Python для обозначения диапазонов, вы можете использовать C-стиль {} импортировав это, + +```py +from __future__ import braces +``` + +**Результат:** +```py + File "some_file.py", line 1 + from __future__ import braces +SyntaxError: not a chance +``` + +Скобочки? Ни за что! Если это разочаровывало вас, используйте Java. Хорошо, еще одна удивительная вещь, можете ли вы найти ошибку +`SyntaxError` которая вызвана в модуле `__future__` [код](https://github.com/python/cpython/blob/master/Lib/__future__.py)? + +#### 💡 Объяснение: + ++ Модуль `__future__` обычно используется для предоставления возможностей из будущих версий Python. Однако "будущее" в данном конкретном контексте - это ирония. ++ Это пасхальное яйцо, связанное с мнением сообщества по этому вопросу. ++ Код на самом деле присутствует [здесь](https://github.com/python/cpython/blob/025eb98dc0c1dc27404df6c544fc2944e0fa9f3a/Python/future.c#L49) в файле `future.c`. ++ Когда компилятор CPython встречает оператор [future](https://docs.python.org/3.3/reference/simple_stmts.html#future-statements), он сначала запускает соответствующий код в `future.c`, а затем рассматривает его как обычный оператор импорта. + +---