Символ подчеркивания (_) в Python используется для разделения слов в именах переменных и функций (snake_case), а также для обозначения констант (SCREAMING_SNAKE_CASE). Если имя переменной конфликтует с зарезервированным словом, добавляется подчёркивание в конце (class_). В именах dunder-методов (магических методов) используются двойные подчеркивания в начале и конце (__init__, __str__). Dunder-методы не вызываются напрямую, а служат для реализации встроенных операций. Специальные атрибуты, такие как __name__, __doc__, __file__ хранят информацию об объектах.
Подчеркивание может быть использовано для создания переменных-заглушек, которые не используются в коде (for _ in range(3)), или для присваивания значения из возврата функции, которое не нужно использовать (_ = save(obj, path)). Оно также используется для указания приватных методов и атрибутов классов (как _my_attribute или __my_method), однако это больше соглашение, чем строгое ограничение доступа. При использовании двойного подчеркивания Python производит "name mangling", заменяя имя атрибута или метода именем класса для большей приватности.
В Python 3 подчеркивание хранит результат последней операции в интерактивной сессии интерпретатора. Подчеркивания также служат визуальным разделителем для улучшения читаемости числовых значений (1_000_000). В functools.singledispatch подчеркивание используется как имя анонимной функции, предназначенной для обработки определенных типов данных. В контексте интернационализации (i18n) и локализации (l10n) _ служит псевдонимом для функции gettext, используемой для перевода текста. Кроме того, при распаковке составных объектов _ можно игнорировать ненужные значения.
Изображение носит иллюстративный характер
Подчеркивание может быть использовано для создания переменных-заглушек, которые не используются в коде (for _ in range(3)), или для присваивания значения из возврата функции, которое не нужно использовать (_ = save(obj, path)). Оно также используется для указания приватных методов и атрибутов классов (как _my_attribute или __my_method), однако это больше соглашение, чем строгое ограничение доступа. При использовании двойного подчеркивания Python производит "name mangling", заменяя имя атрибута или метода именем класса для большей приватности.
В Python 3 подчеркивание хранит результат последней операции в интерактивной сессии интерпретатора. Подчеркивания также служат визуальным разделителем для улучшения читаемости числовых значений (1_000_000). В functools.singledispatch подчеркивание используется как имя анонимной функции, предназначенной для обработки определенных типов данных. В контексте интернационализации (i18n) и локализации (l10n) _ служит псевдонимом для функции gettext, используемой для перевода текста. Кроме того, при распаковке составных объектов _ можно игнорировать ненужные значения.