TGViewer
Python/ django Python/ django @pythonl · 58.6K subscribers
Post #4328 10.5K
👩‍💻 Что выведет этот код и почему?

❗️ Ответ: C (30). Объяснение:

🌟 В классе Rectangle у нас есть атрибуты width и __height. Здесь __height является "приватным" атрибутом из-за двойного подчеркивания перед именем.

🌟 Когда создается объект rect = Rectangle(5, 3), он инициализируется значениями width = 5 и __height = 3.

🌟 Затем rect.width изменяется на 10, и это изменение успешно применяется, так как width не является приватным атрибутом.

🌟 Следующая строка rect.__height = 5 не изменяет оригинальное значение __height, потому что Python использует name mangling для приватных атрибутов. Это означает, что к оригинальному атрибуту __height обращаются как к _Rectangle__height. Таким образом, rect.__height = 5 создает новый атрибут __height, который не влияет на оригинальный атрибут _Rectangle__height.

🌟 Когда вызывается rect.area(), метод использует self.width (которое теперь равно 10) и self.__height (оригинальное значение _Rectangle__height, которое осталось равным 3).

🌟 Следовательно, результат rect.area() будет 10 * 3 = 30

@pythonl
  • 👍 88
  • ❤ 22
  • 🔥 8
  • 😱 1
More from @pythonl
  1. Oct 9, 2026Вышел Python 3.15: ленивые импорты, frozendict, UTF-8 по умолчанию и JIT, который наконец…
  2. Oct 8, 2026🦙 Ollaya: запуск моделей принятия решений в стиле Ollama. Скачиваете модель, поднимаете л…
  3. Oct 7, 2026Python 3.15 почти готов: вышел RC3, финальный релиз 9 октября Python 3.15.0rc3 вышел 2 окт…
  4. Oct 6, 2026🐍 Python Workers в Cloudflare вышли в GA Cloudflare официально сделала Python полноценным…
  5. Oct 6, 2026🎇Главная идея DevSecOps: безопасность перестаёт тормозить разработку. Вместо проверок «по…
  6. Oct 6, 2026🐍 Какая зависимость держит ваш Django на старой версии? django-upgrade-report читает зави…
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 →