Ssylka

Применение символа подчеркивания в Python

Символ подчеркивания (_) в Python используется для разделения слов в именах переменных и функций (snake_case), а также для обозначения констант (SCREAMING_SNAKE_CASE). Если имя переменной конфликтует с зарезервированным словом, добавляется подчёркивание в конце (class_). В именах dunder-методов (магических методов) используются двойные подчеркивания в начале и конце (__init__, __str__). Dunder-методы не вызываются напрямую, а служат для реализации встроенных операций. Специальные атрибуты, такие как __name__, __doc__, __file__ хранят информацию об объектах.
Применение символа подчеркивания в Python
Изображение носит иллюстративный характер

Подчеркивание может быть использовано для создания переменных-заглушек, которые не используются в коде (for _ in range(3)), или для присваивания значения из возврата функции, которое не нужно использовать (_ = save(obj, path)). Оно также используется для указания приватных методов и атрибутов классов (как _my_attribute или __my_method), однако это больше соглашение, чем строгое ограничение доступа. При использовании двойного подчеркивания Python производит "name mangling", заменяя имя атрибута или метода именем класса для большей приватности.

В Python 3 подчеркивание хранит результат последней операции в интерактивной сессии интерпретатора. Подчеркивания также служат визуальным разделителем для улучшения читаемости числовых значений (1_000_000). В functools.singledispatch подчеркивание используется как имя анонимной функции, предназначенной для обработки определенных типов данных. В контексте интернационализации (i18n) и локализации (l10n) _ служит псевдонимом для функции gettext, используемой для перевода текста. Кроме того, при распаковке составных объектов _ можно игнорировать ненужные значения.


Новое на сайте

18600Как тело человека превращается в почву за 90 дней? 18599Как ваш iPhone может заменить паспорт при внутренних перелетах по США? 18598Мозговой шторм: что происходит, когда мозг отключается от усталости 18597Раскрыта асимметричная форма рождения сверхновой 18596Скидки Ninja: как получить идеальную корочку и сэкономить на доставке 18595Почему работа на нескольких работах становится новой нормой? 18594Записная книжка против нейросети: ценность медленного мышления 18593Растущая брешь в магнитном щите земли 18592Каким образом блокчейн-транзакции стали новым инструментом для кражи криптовалюты? 18591Что скрывается за ростом прибыли The Walt Disney Company? 18590Является ли ИИ-архитектура, имитирующая мозг, недостающим звеном на пути к AGI? 18589Как Operation Endgame нанесла сокрушительный удар по глобальной киберпреступности? 18588Кибервойна на скорости машин: почему защита должна стать автоматической к 2026 году 18587Как одна ошибка в коде открыла для хакеров 54 000 файрволов WatchGuard? 18586Криптовалютный червь: как десятки тысяч фейковых пакетов наводнили npm