Logo
TGCATALOG
Catalog Collections Blog
Code on a Napkin - Python coding

Code on a Napkin - Python coding

Channel about programming in Python and other languages. Simple explanations and codes.

No ratings
317
26.10.2026
317
26.10.2026
No ratings
317
26.10.2026
Safe redirect via bot
О канале

Channel about programming in Python and other languages. Simple explanations and codes.

Подписчиков 2,347
Тематика Technology
Язык English
Ссылка t.me/napkincode

We also recommend

Kekaton AI | Voiceover and voice clone
Kekaton AI | Voiceover and voice clone
Bot

AI bot for text-to-speech and voice cloning in Telegram. Create audio using neural network quickly and easily.

Description

Resource for those interested in programming. Focus on Python, but covers other topics as well. Simple examples and breakdowns.

Latest posts

Code on a Napkin - Python coding
Code on a Napkin - Python coding
🔒Открыть пост
и посмотреть медиа
Знаете ли вы, что один True может скрыть исключение внутри with? При выходе из with Python вызывает __exit__ и передает туда сведения об исключении, если оно возникло. Если исключение было, то ложное значение, включая None, пропускает исключение дальше; истинное сообщает Python, что оно обработано. При обычном выходе все три аргумента __exit__ равны None, а возвращаемое значение ни на что не влияет: class Ignore: def __enter__(self): return self def __exit__(self, exc_type, exc, tb): return True with Ignore(): 1 / 0 print("эта строка не выполнится") print("а эта выполнится") # а эта выполнится ZeroDivisionError возникает и прерывает выполнение тела блока – print внутри with не выполняется. Но __exit__ вернул True, поэтому исключение не выходит за пределы блока, а traceback необработанного исключения не выводится. Еще __exit__ может случайно вернуть истинное значение, пробросив результат другого метода: class Connection: def __enter__(self): return self def close(self): print("соединение закрыто") return True def __exit__(self, exc_type, exc, tb): return self.close() with Connection(): raise RuntimeError("запрос не прошел") print("выполнение продолжилось") # соединение закрыто # выполнение продолжилось Допустим, метод close() в этом API возвращает True как признак успешного закрытия. Но __exit__ передает этот результат дальше, и Python считает его обработанным исключением. Достаточно написать self.close() без return, и RuntimeError дойдет до вызывающего кода. Осознанное подавление выглядит так же, только с явной проверкой типа исключения: class SuppressZero: def __enter__(self): return self def __exit__(self, exc_type, exc, tb): return isinstance(exc, ZeroDivisionError) with SuppressZero(): 1 / 0 print("выполнение продолжилось") with SuppressZero(): int("текст") # ValueError: invalid literal for int() with base 10: 'текст' Деление на ноль гасится, а ValueError распространяется дальше, потому что для него __exit__ вернул False. По тому же протоколу работает contextlib.suppress из стандартной библиотеки: он подавляет указанные классы исключений и их подклассы. Возвращаемое значение __exit__ решает, выйдет ли возникшее исключение за пределы блока with: любое истинное значение останавливает его распространение. Если __exit__ не должен подавлять ошибки, заканчивайте метод без return или явно возвращайте False. Для намеренного локального подавления используйте contextlib.suppress(...), перечисляя только ожидаемые типы исключений. Код на салфетке × Кусочки кода
Code on a Napkin - Python coding
FAQ

Open Code on a Napkin - Python coding in Telegram and press the Start button. No separate registration is required.

Yes. The service is designed to be straightforward: open the resource, follow the on-screen instructions and start using it.

No. You can use Code on a Napkin - Python coding directly in Telegram unless the resource description says otherwise.

Access depends on the resource. Check the current information in Telegram after opening Code on a Napkin - Python coding.

The exact features depend on the resource. Open Code on a Napkin - Python coding to see its current functions, content and access conditions.
Subscriber dynamics
+-0.4% last 30 days
Current
2,347
Month ago
2,356
Average growth
+0 / day
Updated
3 hours ago

Reviews for channel Code on a Napkin - Python coding

Log in to leave a review

Only registered users can share their opinion.

No reviews yet

Be the first to share your impression of this resource!

Similar resources

Loading
Switch to Light Theme
Home Catalog Collections Blog Login