Встречается на собеседованиях • сегодня

Зачем нужно нижнее подчеркивание в названии метода в Python

В Python нижнее подчеркивание в названии метода используется для обозначения специальных методов и соглашений:

  1. _method - один нижний символ в начале означает, что метод предназначен для внутреннего использования (protected). Это соглашение, а не строгое правило:
python
class MyClass:
    def _internal_helper(self):
        print("Это внутренний метод")
  1. __method - два символа (dunder) для name mangling - интерпретатор изменяет имя, чтобы избежать коллизий в подклассах:
python
class A:
    def __mangled(self):
        print("Mangled!")

class B(A):
    def __mangled(self):  # Не переопределит метод A
        print("Another")
  1. __method__ - магические/специальные методы (например, __init__, __str__). Они вызываются автоматически в определенных ситуациях.

  2. method_ - иногда используется в конце, чтобы избежать конфликта с ключевыми словами (например, class_ вместо class).

Важно: одно подчеркивание - это соглашение, два - реальное изменение поведения интерпретатора.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы