Logo
TGCATALOG
Catálogo Selecciones Blog
Código en una sirena - Codificación Python

Código en una sirena - Codificación Python

Canal sobre programación en Python y otros idiomas. Explicaciones y códigos simples.

Sin valoraciones
318
27.10.2026
318
27.10.2026
Sin valoraciones
318
27.10.2026
Redirección segura vía bot
О канале

Canal sobre programación en Python y otros idiomas. Explicaciones y códigos simples.

Подписчиков 2,347
Тематика Tecnología
Язык Español
Ссылка t.me/napkincode

También te recomendamos

Kekaton AI  Voz en off y clon de voz
Kekaton AI Voz en off y clon de voz
Bot

bot de IA para clonar texto a voz y voz en Telegram. Cree audio utilizando la red neuronal de forma rápida y fácil.

Descripción

Recurso para aquellos interesados en la programación. Enfóquese en Python, pero también cubre otros temas.

Últimas publicaciones

Código en una sirena - Codificación Python
Código en una sirena - Codificación Python
🔒Открыть пост
и посмотреть медиа
Знаете ли вы, что a + b и b + a в Python могут вернуть разное? Сложение выглядит симметрично, но под капотом Python сначала вызовет type(a).__add__(a, b). Левый и правый операнды идут через разные методы – __add__ и __radd__. Если у __add__ левого типа нет реализации для типа правого – он вернет NotImplemented, и Python вызовет __radd__ правого. class Money: def __init__(self, n): self.n = n def __radd__(self, other): return Money(self.n + other) result = 10 + Money(5) print(result.n) # 15 int.__add__(10, Money(5)) возвращает NotImplemented – тип int ничего не знает о Money. Тогда Python вызывает Money.__radd__(Money(5), 10) – и он-то знает что делать с int. Важно: NotImplemented это значение-синглтон, не исключение NotImplementedError. Возврат NotImplemented – сигнал для того чтобы попробовать другой метод, а не ошибка. Бывает исключение из обычного порядка: если правый операнд – подкласс левого и определяет свой __radd__, он вызывается первым, до __add__ левого: class A: def __add__(self, other): return "A.__add__" class B(A): def __radd__(self, other): return "B.__radd__" print(A() + B()) # B.__radd__ – а не A.__add__ Это сделано чтобы подкласс мог переопределить поведение базового класса. Если бы порядок был как обычно, то A.__add__ отработал бы первым и B никогда бы не получил шанс вмешаться, даже специально определив __radd__. Если оба метода возвращают NotImplemented (или их вообще нет) – случится TypeError: class X: pass class Y: pass try: X() + Y() except TypeError as e: print(e) # unsupported operand type(s) for +: 'X' and 'Y' Именно это сообщение Python выдает когда исчерпаны все варианты диспетчеризации. + может попробовать сделать сложение в два захода. Сначала через левый объект. И если через левый не получилось – то через правый. NotImplemented здесь – способ сказать "передай дальше", а не ошибка. Те же правила распространяются на __rsub__, __rmul__, __rtruediv__ и остальные reflected-методы. В следующий вторник – / vs // и отрицательное деление: почему -7 // 2 == -4, а не -3. Код на салфетке x Кусочки кода
Código en una sirena - Codificación Python
Evolución de suscriptores
+-0.4% últimos 30 días
Actuales
2,347
Hace un mes
2,356
Crecimiento medio
+0 / día
Actualizado
hace 1 día

Reseñas de canal Código en una sirena - Codificación Python

Inicia sesión para dejar una reseña

Solo los usuarios registrados pueden compartir su opinión.

Aún no hay reseñas

¡Sé el primero en compartir tu experiencia con este recurso!

Recursos similares

Loading
Cambiar a tema claro
Inicio Catálogo Selecciones Blog Entrar