Нижнее подчеркивание как называется: Подчеркивать — Underscore — qaz.wiki

Подчеркивать — Underscore — qaz.wiki

Символ, который изначально появлялся на пишущей машинке и в основном использовался для подчеркивания слов.

_ ⎁ ◌̲

Подчеркивать

В  Юникоде U + 005F _ LOW ЛИНИЯ (HTML  _  · _, _ )
U + 2381 ⎁ НЕПРЕРЫВНОГО UNDERLINE SYMBOL
U + 0332 ОБЪЕДИНЕНИЕ LOW ЛИНИЯ
Связанный
Смотрите также U + 2017 ‗ ДВОЙНАЯ НИЗКАЯ ЛИНИЯ
U + 2382 ⎂ НЕПРЕРЫВНЫЙ ПОДЛИНИЙ СИМВОЛ
Отличается от
Отличается от U + 0331 ◌̱ ОБЪЕДИНЕНИЕ МАКРОНА НИЖЕ

Подчеркнутый или подчеркнутый текст.

Подчеркивание , также называемое подчеркиванием , низкая линией или низкий тиром , является линией , проведенной под сегментом текста. Подчеркивание / подчеркивание — это соглашение о корректуре, которое гласит: «Установите этот текст курсивом », традиционно используемое в рукописи или машинописный текст в качестве инструкции для принтера . (Его использование , чтобы добавить акцент в современных документах является устаревшей практикой) . В знак подчеркивания , _ , первоначально появилась на пишущей машинке и в основном используется для подчеркивания (или подчеркивания) слов. Чтобы создать подчеркнутое слово, слово было набрано, каретка пишущей машинки была перемещена обратно в начало слова, а слово было набрано символом подчеркивания.

В современном использовании подчеркивание достигается с помощью разметки или комбинирования символов . Исходный отдельно стоящий символ подчеркивания продолжает использоваться для создания визуального интервала внутри последовательности символов, где пробельный символ не разрешен (например, в именах файлов компьютеров , адресах электронной почты и в URL-адресах в Интернете ). В контекстах, где форматирование не поддерживается, например, в обмене мгновенными сообщениями или в старых форматах электронной почты , разметка «заключающие подчеркивания» иногда используется в качестве прокси для подчеркивания слова (слов) в скобках ( _thus_ ).

Вариант ⎁ используется в провинции Квебек ( Канада ) для подчеркивания надстрочных индексов.

В некоторых языках знак используется как объединяющий диакритический знак и называется «объединяющая нижняя строка».

Диакритический

Подчеркивание используется как диакритический знак, « объединяющий нижнюю строку », ◌̲ , на некоторых языках Египта , некоторых языках, использующих орфографию Rapidolangue в Габоне , Изере в Нигерии и языках коренных народов Америки, таких как шошони и кайова .

Комбинированный диакритический знак ◌̱ (Макрон ниже) похож на объединяющую нижнюю строку, но его знак короче. Разница между «макроном внизу» и «нижней линией» заключается в том, что последнее приводит к непрерывному подчеркиванию при совместном выполнении: сравните a̱ḇc̱ и a̲b̲c̲ (только последний должен выглядеть как abc ).

Похожие марки

Подчеркивание — это не тот же символ, что и тире , хотя одно из соглашений для текстовых новостных лент заключается в использовании подчеркивания, когда требуется длинное тире или короткое тире , или когда подходят другие нестандартные символы, такие как маркеры .

Современное использование

В печатных документах подчеркиванием , как правило , избегать, с курсивом или небольших колпачков часто используемых вместо этого, или (особенно в заголовках) с использованием заглавных букв , жирный шрифт или больше высоты тела (размер шрифта). Поэтому в рукописи, подлежащей верстке , обычно использовались различные формы подчеркивания (см. Ниже ), чтобы указать, что текст должен быть выделен специальным шрифтом, таким как курсив , что является частью процедуры, известной как разметка .

Ряд подчеркиваний (например, __________) можно использовать для создания бланка, который нужно заполнить вручную на бумажном бланке. Его также иногда используют для создания горизонтальной линии; для этой цели также используются другие символы с похожими графемами , такие как дефисы и тире.

Использование в вычислениях

В веб-браузерах настройки по умолчанию обычно различают гиперссылки , подчеркивая их (и обычно меняя их цвет), но и пользователи, и веб-сайты могут изменять настройки, чтобы некоторые или все гиперссылки отображались по-другому (или даже без различия с обычным текстом).

История

Поскольку ранние устройства вывода ( телепринтеры , ЭЛТ и линейные принтеры ) не могли воспроизводить более одного символа в одном месте, было невозможно подчеркивать текст, поэтому ранние кодировки, такие как ITA2 и первые версии ASCII, не имели подчеркивания. Система кодирования символов EBCDIC IBM , представленная в 1964 году, добавила подчеркивание, которое IBM называла «символом разрыва». В отчете IBM о NPL (раннее название того, что сейчас называется PL / I ) набор символов не определен, но конкретно упоминается символ разрыва и приводится RATE_OF_PAY в качестве примера идентификатора. К 1967 году символ подчеркивания распространился на ASCII , заменив символ стрелки влево аналогичной формы, ← (см. Также: PIP ). C , разработанный в Bell Labs в начале 1970-х годов, допускал подчеркивание в идентификаторах.

Подчеркивание предшествовало существованию строчных букв во многих системах, поэтому часто его приходилось использовать для создания идентификаторов из нескольких слов, поскольку CamelCase (см. Ниже) был недоступен.

Соглашения о программировании

Подчеркивание, вставленное между буквами, очень распространено для создания идентификатора из нескольких слов в языках, которые не могут обрабатывать пробелы в идентификаторах. Это соглашение известно как « змеиный регистр » (другой популярный метод называется camelCase , где заглавные буквы используются, чтобы показать, где начинаются слова).

Подчеркивание в качестве первого символа в идентификаторе часто используется для обозначения внутренней реализации, которая не считается частью API и не должна вызываться кодом вне этой реализации. Python использует это для обозначения защищенных переменных-членов классов и двойного подчеркивания для обозначения частных переменных. В Dart все частные свойства классов должны начинаться с подчеркивания; это использование также распространено в других языках, таких как C ++, хотя в них есть ключевые слова, указывающие на то, что члены являются частными. Он широко используется для скрытия переменных и функций, используемых для реализации в файлах заголовков . Фактически, использование одиночного подчеркивания для этого стало настолько распространенным, что компиляторам C пришлось стандартизировать двойное подчеркивание (например __DATE__ ) для фактических встроенных переменных, чтобы избежать конфликтов с переменными в файлах заголовков. Python использует двойное подчеркивание, чтобы «исказить» частный идентификатор, чтобы усложнить обращение к нему, и « PHP резервирует все имена функций, начинающиеся с __, как волшебные».

Переменная, названная просто с подчеркиванием, часто имеет особое значение. $_ либо _ предыдущая команда, либо результат во многих интерактивных оболочках , таких как Python , Ruby и Perl . В Perl , @_ это специальный массив переменной , которая содержит аргументы в функции . В Clojure он указывает аргумент, значение которого будет проигнорировано.

В некоторых языках с сопоставлением с образцом , таких как Prolog , Standard ML , Scala , OCaml , Haskell , Erlang и Wolfram Language , образец _ соответствует любому значению, но не выполняет привязку .

HTML <u> и CSS

HTML имеет презентационный элемент, <u> который изначально использовался для подчеркивания текста; это использование было устаревшим в HTML4 в пользу CSS стиля {text-decoration: underline} . В HTML5 тег появился снова, но его значение было значительно изменено: теперь он «представляет собой диапазон встроенного текста, который должен быть отображен таким образом, чтобы указать, что он имеет нетекстовую аннотацию». Это средство предназначено, например, для выделения красной волнистой линии подчеркивания, чтобы пометить орфографические ошибки во время ввода, но которые не должны быть встроены в какой-либо сохраненный файл (в отличие от знака выделения, который был бы),

Элементы также могут существовать на других языках разметки , таких как MediaWiki . Кодировка текста Инициатива (TEI) обеспечивает широкий выбор соответствующих элементов для маркировки редакционной деятельности (вставка, удаление, исправление, добавление и т.д.).

Юникод

В Unicode есть отдельный символ подчеркивания _ в U + 005F, который является наследием практики пишущих машинок с подчеркиванием с использованием обратного пробела и перепечатки. В современной практике используется комбинированный диакритический знак «объединение нижней линии» в U + 0332 ◌̲, что приводит к подчеркиванию при совместном использовании: u̲n̲d̲e̲r̲l̲i̲n̲e̲. Unicode также имеет объединяющий макрон ниже , односимвольный диакритический знак.

  • одинарное подчеркивание: a̲b̲c̲d̲e̲f̲g̲h̲i̲j̲k̲l̲m̲n̲o̲p̲q̲r̲s̲t̲u̲v̲w̲x̲y̲z̲0̲1̲2̲3̲4̲5̲6̲7̲8̲9̲
  • двойное подчеркивание: a̲̲b̲̲c̲̲d̲̲e̲̲f̲̲g̲̲h̲̲i̲̲j̲̲k̲̲l̲̲m̲̲n̲̲o̲̲p̲̲q̲̲r̲̲s̲̲t̲̲u̲̲v̲̲w̲̲x̲̲y̲̲z̲̲0̲̲1̲̲2̲̲3̲̲4̲̲5̲̲6̲̲7̲̲8̲̲9̲̲

«Имитация» подчеркивания в виде обычного текста

В приложениях с обычным текстом , в том числе в электронных письмах с обычным текстом , где разметка акцента невозможна, желаемый акцент часто указывается окружающими словами символами подчеркивания. Например, «Вы должны использовать _эмульсионную_ краску для потолка».

Некоторые приложения автоматически добавляют акцент к тексту, заключенному в квадратные скобки с помощью подчеркивания, подчеркивая или выделяя его курсивом (например, _string_ могут отображать строку или строку ).

Как маркер неправильности

Подчеркивание (обычно красное, волнистое или и то, и другое) часто используется программами проверки орфографии (и грамматики ) для обозначения орфографических ошибок или иного неправильного текста.

Рукописи

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

  • одинарная пунктирная линия для слова « стет» , «пусть постоит» , отметка о корректуре отменена.
  • одинарное прямое подчеркивание для курсива
  • одинарное волнистое подчеркивание для жирного шрифта
  • двойное прямое подчеркивание для МАЛЕНЬКИХ ЗАГЛАВНЫХ букв
  • двойное подчеркивание одной прямой и одной волнистой линии для жирного курсива
  • тройное подчеркивание для ПОЛНЫХ ЗАГЛАВНЫХ БУКВ (используется для прописных букв или для изменения текста, уже набранного в нижнем регистре).

Подчеркивание на китайском

В китайском языке подчеркивание является знаком препинания для имен собственных ( упрощенный китайский : 专 名号 ; традиционный китайский : 專 名號 ; пиньинь : zhuānmínghào; буквально « знак собственного имени », используемый для личных и географических имен). Его значение в некоторой степени похоже на использование заглавных букв в английском языке, и его никогда не следует использовать для выделения, даже если влияние английских вычислений иногда вызывает последнее. Волнистая линия подчеркивания ( упрощенный китайский : 书名 号 ; традиционный китайский : 書名 號 ; пиньинь : shūmínghào; буквально «знак названия книги») выполняет аналогичную функцию, но отмечает названия литературных произведений вместо имен собственных.

В случае двух или более соседних имен собственных каждое отдельное имя собственное подчеркивается отдельно, поэтому между подчеркиванием каждого имени должен быть небольшой промежуток.

Смотрите также

Рекомендации

внешняя ссылка

«Ngram Viewer: сравнение использования« подчеркивания »и« подчеркивания » » . books.google.com . Дата обращения 9 октября 2020 .

Знак нижнего подчеркивания на клавиатуре

Символ нижнего подчеркивания, который называют еще «земля» или «нижний слеш», для некоторых людей встречается для печатания на клавиатуре в первый раз и не все знают как его напечатать. Сегодня мы рассмотрим все способы вставки этого знака в любом редакторе текста и любой операционной системе, что WINDOWS, что MacOS.

Способы решения

Как сделать нижнее подчеркивание на компьютере? На данный момент юзеры могут решить поставленную задачу по-разному. Все зависит от личных предпочтений и от цели, которую хочется достигнуть в конечном итоге.

Вот возможные варианты развития событий:

  • проставление символа при помощи клавиатуры;
  • вставка специального знака через функции текстового редактора;
  • использование настроек приложения для работы с текстом.

Что именно выбрать? Ответ напрямую зависит от цели, которой в конечном итоге хочет достичь пользователь. Ниже мы рассмотрим все перечисленные приемы.

Вставка на клавиатуре

Нижнее подчеркивание на клавиатуре установить проще, чем кажется. Рассмотрим все возможные расклады на примере работы с MS Word.

Что предстоит сделать для получения желаемого результата? В ходе проведенных манипуляций пользователь может просто отвести немного места в документе под рукописный текст. В файле появится подчеркнутая область, поверх которой напечатать буквы никак не выйдет.

Как сделать нижнее подчеркивание? Для этого потребуется:

  • Открыть текстовый редактор.
  • Нажать на кнопку Shift на клавиатуре.
  • Держа предыдущий элемент управления нажатым, найти и зажать кнопку с символом «нижнее подчеркивание». Она располагается неподалеку от backspace.
  • Повторить операцию столько раз, сколько это необходимо.

Дело сделано. Подчеркивание снизу установлено в той или иной области текстового документа. Но это только начало.

Настройки редактора

Как делать нижнее подчеркивание при помощи встроенных параметров текстового редактора? Подобный вариант развития событий обычно помогает отредактировать уже готовые предложения. Упомянутый символ появится сразу под текстом.

Инструкция по воплощению задумки в жизнь имеет такой вид:

  • Выделить текст, который хочется отредактировать.
  • Нажать на кнопку «Ч» на функциональной панели «Ворда».

Это один из приемов. Помимо него можно сделать так:

Осуществить выделение текста, подлежащего форматированию.

  • Выбрать опцию «Формат»-«Шрифт».
  • Указать на «Подчеркнутый». В этом месте можно установить тип и цвет линий.
  • Сохранить изменения.

Как сделать нижнее подчеркивание в тексте? Теперь мы знаем еще несколько приемов воплощения задумки в жизнь. Не стоит ограничиваться ими! Есть еще несколько советов, способных помочь юзеру.

Важно: для быстрого подчеркивания можно выделить текст и нажать Ctrl + U.

Специальные символы

Символ «Нижнее подчеркивание» в Word можно отыскать в разделе специальных символов. При помощи него юзеры способны выделить немного места под рукописный текст. Результат окажется таким же, как и в случае с первым приемом.

Для установки подчеркивания в нижней части строки, потребуется:

  • Установить курсор в том или ином месте._`abc►ХарактеристикиНазваниеlow lineЮникодU+005FHTML-код
  • _ или
  • _
  • UTF-160x5F
  • URL-код
  • %5F

    Подчёркивание, по́дчерк (_) — символ ASCII, имеющий код 0x5F (hex), 95 (dec). На стандартной компьютерной клавиатуре этот символ расположен совместно со знаком дефиса на клавише, находящейся справа от клавиши 0.

    Символ подчёркивания остался со времён пишущих машинок. До распространения текстовых процессоров этот символ использовался для подчёркивания слов в тексте. Для этого после набора слова каретка пишущей машинки отводилась назад (к началу слова или фразы, подлежащей подчёркиванию) и поверх текста печаталось необходимое количество символов подчёркивания, создающих сплошную линию под текстом. Кроме того, серия знаков подчёркивания (например, такая: _________) позволяла обозначать поля для рукописного ввода на бланках и прочем.

    В настоящее время символ подчёркивания зачастую применяется для замены пробела в некоторых случаях, когда использование пробела невозможно или нежелательно: в адресах электронной почты, адресах ресурсов в сети Интернет (в доменной части адреса обычно заменяется на дефис, но иногда нестандартно на подчёркивание [1] ), в названиях компьютерных файлов, названиях (идентификаторах) переменных и других объектов в языках программирования и т. д.

    Некоторые компьютерные приложения автоматически подчёркивают текст, окружённый знаками подчёркивания. Таким образом _подчёркнутый_ отображается как подчёркнутый. В текстовом процессоре Microsoft Word, при соответствующих настройках автозамены, текст, выделенный знаками подчёркивания, становится курсивным.

    На самом деле, сам по себе этот знак ничего не подчёркивает, так как на одно знакоместо на дисплее можно поместить только один символ, поэтому его иногда называют [ кто? ] не «подчёркивание», а «андерскор» («Underscore») [2] . Кроме того, этот символ иногда называют «Нижнее подчёркивание», что недопустимо по правилам русского языка и является плеоназмом — подчёркивание всегда выполняется снизу. Также символ называют «нижний пробел» [ источник не указан 74 дня ] .

    Пользователь, который только начал свое знакомство с компьютером, может столкнуться с огромной кипой проблем, которые опытному юзеру покажутся банальными. Из разряда таких — написание символа нижнего подчеркивания. В этой статье будет рассказано, где находится эта клавиша на клавиатуре и как поставить этот знак в тексте. Будет приведено два способа вставки.

    Где находится на клавиатуре

    Первостепенно нужно выяснить, где находится этот знак на клавиатуре, ведь традиционный способ его ввода подразумевает использование именно этого девайса.

    Знак нижнего подчеркивания расположен в верхней части клавиатуры в цифровом ряду. Идет он сразу после клавиши ноль, которая расположена ближе к концу ряда. На самом деле, нужная нам клавиша выполняет сразу две функции: она необходима для написания тире и подчеркивания. На изображении ниже вы можете увидеть точное месторасположение данного знака.

    Как поставить

    Узнав, где на клавиатуре расположен знак нижнего подчеркивания, можно переходить непосредственно к способам его написания. Сразу стоит сказать, что представлено будет два, и только один из них подразумевает использование названной клавиши. Другой же так и вовсе не требует наличия клавиатуры, подключенной к компьютеру.

    Способ первый: с клавиатуры

    Как и было сказано ранее, самым простым и традиционным способом написания этого знака является использование непосредственно клавиатуры. Однако здесь есть нюансы. Вы не сможете его написать, просто нажав по клавише. Проверив это, вы заметите, что в тексте будет введен знак «тире». Чтобы поставить нижнее подчеркивание, необходимо задействовать еще одну клавишу — Shift. Находится она в нижней левой части клавиатуры. Предварительно зажмите ее, и, удерживая, нажмите клавишу подчеркивания. Только в этом случае будет вставлен нужный символ.

    Способ второй: через таблицу символов

    Этот символ можно вписать даже в том случае, если у вас нет клавиатуры. Для этого нужно использовать таблицу символов — утилиту, которая предустановлена в каждой версии операционной системы Windows.

    1. Откройте меню «Пуск».
    2. Перейдите в меню «Все приложения».
    3. Отыщите папку «Стандартные» и войдите в нее.
    4. Найдите приложение «Таблица символов» и запустите его.

    Появится одноименное окно. В нем будет перечень всех символов, которые могут быть вставлены в текст. Нижнее подчеркивание находится по умолчанию в четвертом ряду третьим по счету.

    Чтобы его вставить в текст, надо:

    1. Нажать по нему левой кнопкой мыши.
    2. Найти «Выбрать».
    3. Нажать «Копировать».
    4. Установить курсор в той части текста, куда нужно вставить символ.
    5. Нажать правой кнопкой мыши и выбрать опцию «Вставить».

    Вот так можно написать символ подчеркивания с помощью таблицы символов. Данный способ отлично подойдет тем людям, у которых сломалась клавиатура.

    Заключение

    Теперь вы знаете не только, где нижнее подчеркивание на клавиатуре, но и как его можно вписать в текст двумя различными способами. Подытожив, можно сказать, что первый метод хорош своей простотой и скоростью исполнения, но если у вас сломалась клавиатура или просто не работает нужная клавиша, то второй будет просто незаменим.

    Метки:


    НАШ САЙТ РЕКОМЕНДУЕТ:

    ./ _ — Говорим и пишем правильно — ЖЖ

    Blurb
    перед тем как задать вопрос, прочтите, пожалуйста, FAQ. уважайте чужое время.
    Март 2021
    123456
    78910111213
    14151617181920
    21222324252627
    28293031

    . / _ 12 авг, 2004 @ 21:14
    Простите за дурацкий вопрос, но он меня по незнанию мучает страшно.

    Как правильно называется этот знак: _

    Подчеркивание, пробел или как?..

    From:yenna
    Date:Август, 12, 2004 10:19 (UTC)
    (Link)

    нижнее подчеркивание

    спасибо, я так и думал.

    просто странно звучит, нижнее подчеркивание. что, бывает верхнее?

    From:naril
    Date:Август, 12, 2004 10:37 (UTC)
    (Link)

    Я всю жизнь называла его «почерк». И люди меня понимают.

    одно дело понимают. другое — все-таки правильно называть.(Удалённый комментарий)

    From:alizsa
    Date:Август, 12, 2004 11:02 (UTC)
    (Link)

    Нет, слэш — это «/». Обратный слэш (бэкслэш) — «\».

    From:soamo
    Date:Август, 12, 2004 11:09 (UTC)
    (Link)

    нижнее подчеркивание. underscore

    Мои знакомые верстальщики почему-то называют его нижним ПРОБЕЛОМ. Но я всегда говорю «нижний прочерк».

    From:_unn
    Date:Август, 12, 2004 12:24 (UTC)
    (Link)
    From:ex_chistyak
    Date:Август, 12, 2004 12:30 (UTC)

    Нижний прочерк

    (Link)
    From:knyar
    Date:Август, 12, 2004 13:41 (UTC)
    (Link)

    Подчёркивание

    Подчерк. Хотя по идее он должен быть «под чем-то», а он сам по себе. ..

    From:visenna
    Date:Август, 12, 2004 14:36 (UTC)
    (Link)

    На работе употребляем underscore, в некоторых книгах встречала: «нижний знак подчёркивания».

    From:mithgol
    Date:Август, 12, 2004 21:32 (UTC)
    (Link)

    подчёркивание

    From:_wd40_
    Date:Август, 14, 2004 14:02 (UTC)

    А вроде уже поднимали здесь этот вопрос…

    (Link)

    Я употребляю исключительно «подчерк»; привык считать, что так правильно. «Нижнее подчёркивание» режет ухо тавтологичностью. А просто «подчёркивание» — имхо, тоже вполне допустимо и даже с претензией на бОльшую правильность.

    Давайте разберемся с нижним подчеркиванием (_) в Python

    Символ нижнего подчеркивания

    Символу нижнего подчеркивания (_) в Python присущ ряд особенностей.

    В большинстве языков программирования (хотя, конечно же не во всех) этот символ используется в названиях функций и переменных, но в Python он имеет особое значение. Если вы Python-программист, то вероятно знакомы с таким синтаксисом: for _ in range(10) , __init__(self).

    Этот пост посвящен объяснению того, как использовать нижнее подчеркивание (_) и как его понимать в различных контекстах.

    Известно пять случаев с использования нижнего подчеркивания в Python.

    1. Для хранения значения последнего выражения в интерпретаторе.
    2. Для игнорирования конкретного значения (так сказать «Мне без разницы»).
    3. Для придания специального значения переменным и функциям при наименовании.
    4. Для использования функций «Internationalization(i18n)» или «Localization(l10n)».
    5. Для разделения цифр в числе или символов в литерале.

    Давайте посмотрим каждый из перечисленных случаев.

    Случай использования в интерпретаторе

    Интерпретатор Python’а хранит последнее значение в специальной переменной с именем «_». Эта особенность используется в первую очередь в стандартном интерпретаторе CPython, как, впрочем, и в других интерпретаторах Python.

     >>> 10 
    10 
    >>> _ 
    10 
    >>> _ * 3 
    30 
    >>> _ * 20 
    600
    
    Случай игнорирования значений

    Нижнее подчеркивание также используется для игнорирования конкретных значений. Если конкретное значение не нужно или значения нигде не используются, просто присвойте их нижнему подчеркиванию.

    # Ignore a value when unpacking
    x, _, y = (1, 2, 3) # x = 1, y = 3 
    # Ignore the multiple values. It is called "Extended Unpacking" which is available in only Python 3.x
    x, *_, y = (1, 2, 3, 4, 5) # x = 1, y = 5  
    # Ignore the index
    for _ in range(10):     
        do_something()  
    # Ignore a value of specific location
    for _, val in list_of_tuple:
        do_something()
    
    Случай придания специфических значений именам переменных и функций

    Нижнее подчеркивание часто используется в наименованиях. Стиль кодирования PEP8 в языке Python вводит соглашения по использованию следующих случаев наименований.

    _single_leading_underscore

    Это соглашение используется для объявления приватных переменных, функций, методов и классов в модуле. При этом все, что связано с этим соглашением, игнорируется в from module import *.

    Хотя, конечно же, Python не поддерживает истинной приватности, поэтому можно непосредственно вызывать их из других модулей. Поэтому иногда это называют «нестрогий указатель внутреннего использования«.

    _internal_name = 'one_nodule' # private variable
    _internal_version = '1.0' # private variable
    
    class _Base: # private class
        _hidden_factor = 2 # private variable
        def __init__(self, price):
            self._price = price
        def _double_price(self): # private method
            return self._price * self._hidden_factor
        def get_double_price(self):
            return self._double_price() 
    

    single_trailing_underscore_

    Это соглашение предотвращает конфликты между ключевыми или стандартными словами.

    Tkinter.Toplevel(master, class_='ClassName') # Avoid conflict with 'class' keyword
    list_ = List.objects.get(1) # Avoid conflict with 'list' built-in type
    

    __double_leading_underscore

    В этом случае речь идет о синтаксисе, а не о соглашении. Двойное нижнее подчеркивание искажает имена атрибутов класса и исключает конфликты между именами атрибутов классов. (Так называемое «декорирование», означающее, что компилятор или интерпретатор изменяет имена переменных или функций по некоторым правилам). Правило декорирования в Python добавляется «_ИмяКласса» перед именами атрибутов, объявленных с двойным нижним подчеркиванием.

    То есть, если написать метод с именем «__метод» в классе, имя будет декорировано следующим образом: «_ИмяКласса__метод».

     class A:
        def _single_method(self):
            pass
        def __double_method(self): # for mangling
            pass
    class B(A):
        def __double_method(self): # for mangling
            pass
    

    Так как именованные атрибуты с двойным нижним подчеркиванием будут декорированы, так показано выше, мы не сможем получить к ним доступ по «ИмяКласса. __метод». Некоторые иногда пользуются этим как свойством подлинного сокрытия, на самом же деле это не служит для сокрытия и не рекомендуется для применения с подобными целями. Подробную информацию по этой теме можно найти в разделе по наименованиям в Python.

    __double_leading_and_trailing_underscore__

    Это соглашение используется для специальных переменных или методов (так называемый «магический метод») таких как __init____len__. Эти методы определяют особые синтаксические признаки или выполняют специфические действия. Например, __file__ указывает местоположение Python-файла, __eq__ выполняется, когда истинно условие a == b.

    Конечно можно создать специальный пользовательский метод, однако чаще прибегают к модификации предопределенных методов. (Например, для инициализации с помощью __init__ класса, который будет использоваться при создании экземпляра класса.)

     class A:
        def __init__(self, a): # use special method '__init__' for initializing
            self.a = a
        def __custom__(self): # custom special method. you might almost do not use it
            pass
    
    Случай использования функций Internationalization(i18n) или «Localization(l10n)

    Это просто соглашение, без синтаксических функций. Нижнее подчеркивание не означает i18n/l10n, это только соглашение, связывающее i18n / l10n, с переменной нижнего подчеркивания, взятой из соглашения в языке программирования С.

    Встроенная библиотека gettext, а также фреймворк Django также поддерживают и используют это соглашение.

    # see official docs : https://docs.python.org/3/library/gettext.html
    import gettext
    gettext.bindtextdomain('myapplication','/path/to/my/language/directory')
    gettext.textdomain('myapplication')
    _ = gettext.gettext
    # ...
    print(_('This is a translatable string. '))
    
    Случай разделения чисел в числе или символов в литерале

    Это свойство было добавлено в Python 3.6 и используется для разделения чисел или цифр с помощью нижнего подчеркивания для их удобочитаемости.

    dec_base = 1_000_000
    bin_base = 0b_1111_0000
    hex_base = 0x_1234_abcd
    print(dec_base) # 1000000
    print(bin_base) # 240
    print(hex_base) # 305441741
    
    Заключение

    Итак, мы рассмотрели особенности и назначения применения нижнего подчеркивания в Python. И хотя я Python-программист, я сам не знал о некоторых его свойствах до написания этого поста. В частности, совершенно новым для меня оказалось использование функций i18n/l10n.

    Надеюсь, что вы, как и я, нашли для себя много полезного при чтении моего поста. Спасибо!

    Перевод статьи mingrammer: Understanding the underscore( _ ) of Python

    Подчеркивание в Python — tirinox.ru

    Знак подчеркивания _ или underscore занимает особое место в Python.

    Подчеркивание имеет множество применений, как эстетических конвенций (необязательная договоренность разработчиков оформлять код с подчеркиваниями), так и функциональных, т. е. реально затрагивающих исполнение кода (такие места буду отмечать знаком ⚠️).

    1. змеиный_регистр (snake_case)
    2. имена магических методов и переменных
    3. «приватные» члены класса и коверкание имен (mangling)
    4. игнорирование значения переменной
    5. разделение разрядов в числах
    6. избегание конфликтов с ключевыми словами
    7. хранение последнего результата в интерпретаторе

    Поехали от самого известного к необычному!

    Змеиный регистр

    Это конвенция именования переменных и функций в Python: название начинается с маленькой буквы, а слова разделяют знаком подчеркивания. Думаю все и так знают:

    foo_bar = 10
    def my_function_to_do_something_special(arg_1, arg_2):
        . ..
    
    # не принято писать так:
    FooBar = 10
    carSpeed = 60
    Dont_Do_Like_This()

    Магические имена

    Опять же, думаю, все видели, что имена магических методов и магических переменных начинаются и заканчиваются в двух знаком подчеркивания (__init__). Вот, например, так:

    class CrazyNumber:
        __slots__ = ('n',)
        def __init__(self, n):
            self.n = n
        def __add__(self, other):
            return self.n - other
        def __sub__(self, other):
            return self.n + other
        def __str__(self):
            return str(self.n)

    Конфликт с ключевым словом

    Если вам очень нужно назвать переменную, функцию или аргумент также как и какое-либо ключевое слово из Python, то принято в конце ставить знак подчеркивания, дабы избежать конфликта.

    Бывает актуально, если вы пишите какой-то биндинг к сторонней библиотеке, где, к несчастью, некоторые понятия имеют такое же имя как и ключевые слова:

    Tkinter.Toplevel(master, class_='ClassName')

    Но! Если вы пишите классовый метод, принято первый аргумент называть cls, а не class_.

    Приватные члены

    Приватные члены – это такие, которые предполагаются только для внутреннего использования классом или модулем. Они не должны использоваться из-вне, хотя Python и не запрещает это делать. Есть способы получить доступ к любым приватным вещам, если очень нужно.

    Разделение на приватные и публичные члены – это механизм сокрытия (пожалуйста, не путайте с инкапсуляцией). Я писал про разницу между ними в статье «Сокрытие в Python». Здесь кратко напомню.

    Если имя начинается с одного подчеркивания, то такая переменная, метод или класс в модуле считается приватной. Если вы обратитесь к приватной вещи из-вне модуля или класса, где она определена, то, вероятно, ваша IDE просто подчеркнет такой код, как подозрительный, но он будет выполняться без ошибок или предупреждения.

    # приватные переменные в модуле
    _internal_variable = 'some secret'
    _my_version = '1.6'
    
    # приватная функция модуля
    def _private_func():
        ...
    
    # приватный класс модуля
    class _Base:
        # приватная переменная класса
        _hidden_multiplier = 1.2
        def __init__(price):
            # приватное поле экземпляра класса
            self._price = price * self._hidden_multiplier

    ⚠️ Влияние на поведение: from module import * не будет импортировать приватные члены модуля. Но можно импортировать их принудительно: from module import _Base, _my_version

    Еще приватнее или name mangling

    ⚠️ Если мы будем использовать не одно, а целых два подчеркивания перед именем, то это задействует механизм name mangling. На русский это можно перевести как «коверкание имени». Python исковеркает данное имя, чтобы избежать конфликтов имен атрибутов между классами в иерархии наследования. Естественно, внутри класса, где определен атрибут с двойным подчеркиванием спереди, он будет доступен также по своему имени. Но на самом деле к имени добавится префикс _ClassName. Проиллюстрирую правило манглинга на примере. Допустим есть класс Tree, и вы пишите метод __rebalance, то его имя превратится в _Tree__rebalance при доступе из-вне класса. Пример кода:

    class Tree:
        def __rebalance(self):
            print('Tree. __rebalance')
    
        def public_method(self):
            # метод доступен по своему имени
            self.__rebalance()
    
    class BinaryTree(Tree):
        # этот метод не перекроет __rebalance из Tree!
        def __rebalance(self):
            print('BinaryTree.__rebalance')
    
    tree = Tree()
    tree._Tree__rebalance()  # Tree.__rebalance
    
    btree = BinaryTree()
    btree._Tree__rebalance()  # Tree.__rebalance
    btree._BinaryTree__rebalance()  # BinaryTree.__rebalance

    Кстати, на слэнге двойное подчеркивание называется dunder. Добавление третьего и четвертого подчеркиваний к дополнительным эффектам не приведет!

    Игнорирование

    Если вам не нужно значение переменной, назовите его просто подчеркиванием.

    # просто повтор 10 раз, а счетчик не нужен
    for _ in range(10):
        print('Hello')

    Так же при распаковке коллекций в переменные вы можете применить сколько угодно подчеркиваний.

    def tup():
        return 1, 2, 3, 4
    
    # третье не нужно 
    a, b, _, d = tup()
    print(a, b, d)  # 1 2 4
    
    # второе и четвертое не нужны
    a, _, c, _ = tup()
    print(a, c)  # 1 3
    
    # только первое
    a, *_ = tup()
    print(a)  # 1
    
    # первое и последние
    a, *_, d = tup()
    print(a, d)  # 1 4
    
    # нужны только 2 последних
    *_, c, d = tup()
    print(c, d)  # 3 4

    Примечание: использовать значение _ в принципе можно (в нем будет последний присвоенный результат), но зачем?

    С аргументами функций немного иначе. Среду аргументов может быть только одно подчеркивание. Если нужно игнорировать два и более аргумента, то перед их именами ставим подчеркивание, тогда IDE не будет ругаться.

    # нужен только x 
    def get_only_x(x, _y, _z):
        return x
    
    # так нельзя!
    def get_only_x(x, _, _):
        return x
    

    Разделение разрядов в числах

    Фишка добавлена в Python 3.6. Можно разделять разряды в длинных числах для облегчения чтения кода.

    >>> 1_000_000
    1000000
    
    >>> 0b1011_1100_0000_1111
    48143
    
    >>> 0x_ee12_3b5f
    3994172255
    
    >>> 0o_1_2_3_4_5_6_7  # можно хоть каждый разряд отделить!
    342391
    
    >>> 10_20_30_40
    10203040

    Последний результат в интерпретаторе

    ⚠️ Лично я не знал, про эту фишку, пока не стал писать эту статью. А между тем, она супер удобна, если вы используете интерпретатор Python как калькулятор:

    >>> 10 + 20
    30
    >>> _ + 3
    33
    >>> _ * 3 + _ * 2
    165
    
    # print возвращает None, но None не затирает _ !
    >>> print('hello')
    hello
    >>> None
    >>> _
    165

    Может, я что-то упустил? Если да, присылайте мне в Телеграм!

    😈 Специально для канала @pyway. Подписывайтесь на мой канал в Телеграм @pyway 👈




    1 212

    Для чего используется символ подчеркивание ( _ ) в Python

    Хотя в большинстве языков программирование (конечно, не во всех) символ подчеркивание ( _ ) используется только для задания имен переменных и функций в стиле snake-case, в Python он имеет особое значение. Если вы хорошо знаете python, синтаксис подобный этому for _ in range(10), __init__ (self), должен быть вам хорошо знаком. Если нет, то этот пост подробно расскажет о том, когда и как используется символ подчеркивание ( _ ) в Python.

    Существует 5 особых случаев использования символа подчеркивания.

    1. Для хранения значения последнего выражения в интерпретаторе.
    2. Для игнорирования значений. (так называемое «I don’t care» — «мне все равно»)
    3. Для придания особого предназначения методам, функциям и переменным.
    4. Использовать в качестве функций «Интернационализация (i18n)» или «Локализация (l10n)».
    5. Для разделения цифр в больших числах.

    Давайте рассмотрим подробнее каждый случай.

    При использовании в интерпретаторе

    Интерпретатор python сохраняет последнее значение выражения в специальной переменной, называемой ‘_‘. Эта функция была впервые использована в стандартном интерпретаторе CPython, и теперь присутствует и в других интерпретаторах Python.

    >>> 10 
    10 
    >>> _ 
    10 
    >>> _ * 3 
    30 
    >>> _ * 20 
    600

    Для игнорирования значений

    Подчеркивание также используется для игнорирования не нужных значений. Если вам не нужны значения или значения не используются в коде, просто присвойте значение символу подчеркивания.

    # Игнорирование значение при распаковке
    x, _, y = (1, 2, 3) # x = 1, y = 3 
    
    # Игнорирование несколько значений.  
    # Это называется «Расширенная распаковка», 
    # которая доступна только в Python 3.x
    x, *_, y = (1, 2, 3, 4, 5) # x = 1, y = 5  
    
    # Игнорирование индекса
    for _ in range(10):     
        do_something()  
    
    # Игнорировать значение определенного местоположения
    for _, val in list_of_tuple:
        do_something()

    Придание особого предназначения методам, функциям и переменным.

    Подчеркивание наиболее часто используется в «наименовании» методов, функции и переменных. В PEP8, который является руководящим сборником всех соглашений в Python, описано следующие 4 случая использование подчеркивания в именовании.

    _single_leading_underscore

    Один символ подчеркивания в начале имени. Это соглашение используется для объявления приватных переменных, функций, методов и классов в модуле. Все, что именовано согласно этому соглашению игнорируется в импорте по команде from module import *. Однако, нужно помнить что конечно же, Python не поддерживает по-настоящему приватный доступ, поэтому мы не можем принудительно установить что-то частное, а всегда все можем вызывать напрямую.

    _internal_name = 'one_nodule' # приватная переменная
    _internal_version = '1.0' # приватная переменная
    
    class _Base: # private class
        _hidden_factor = 2 # приватная переменная
        def __init__(self, price):
            self._price = price
        def _double_price(self): # приватная метод
            return self._price * self._hidden_factor
        def get_double_price(self):
            return self._double_price() 

    single_trailing_underscore_

    Один символ подчеркивания в конце имени. Это соглашение может использоваться для предотвращения конфликта с встроенными именами переменных и функций в Python.

    Tkinter.Toplevel(master, class_='ClassName') # Предотвращаем конфликт с ключевым словом 'class'
    list_ = List.objects.get(1) # Предотвращаем конфликт с ключевым словом 'list'

    __double_leading_underscore

    Двойной символ подчеркивания в начале имени. Это скорее вопрос синтаксиса, чем соглашения. Двойное подчеркивание меняет имена атрибутов класса, чтобы избежать конфликтов имен атрибутов между классами. (так называемое «изменение» означает, что компилятор или интерпретатор изменяет имена переменных или функций с помощью некоторых правил, а не используют их как есть)
    Правило изменения в Python заключается в добавлении к имени класса «ClassName» имени атрибута, объявленных с двойным подчеркиванием. То есть, если вы напишите метод с именем «__method» в классе, имя будет изменено на «_ClassName__method». См пример ниже.

    class A:
        def _single_method(self):
            pass
        def __double_method(self): # for mangling
            pass
    class B(A):
        def __double_method(self): # for mangling
            pass

    Поскольку атрибуты, названные c двойным подчеркиванием в начале, будут изменены, как описано выше, мы не можем получить к ним доступ к ним напрямую с помощью «ClassName .__method». Иногда некоторые люди используют это момент как создание настоящих приватных методов, но это создано не для этого и не рекомендуется использовать для создания приватных методов.

    Еще один пример:

    >>> class MyClass():
    . ..     def __init__(self):
    ...             self.__superprivate = "Hello"
    ...             self._semiprivate = ", world!"
    ...
    >>> mc = MyClass()
    >>> print mc.__superprivate
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    AttributeError: myClass instance has no attribute '__superprivate'
    >>> print mc._semiprivate
    , world!
    >>> print mc.__dict__
    {'_MyClass__superprivate': 'Hello', '_semiprivate': ', world!'}

    __double_leading_and_trailing_underscore__

    Двойное подчеркивание в начале и в конце имени. Это соглашение используется для создания специальных переменных или методов (так называемый «магические методы»), таких как __init__, __len__. Эти методы предоставляют специальные синтаксические функции или делают специальные вещи (например осуществляют протокол дескриптеров). Например, __file__ указывает местоположение файла Python, __eq__ выполняется, когда выполняется выражение a == b.
    Пользователь, конечно, может создать свой собственный специальный метод, но в это очень редко возникает реальная потребность. Обычно может возникнуть необходимость в изменение некоторых встроенных специальных методов. (Например, очень часто вам будет нужно инициализировать свой класс с помощью __init__, который выполняется при создании экземпляра класса.)

    class A:
        def __init__(self, a): 
            # использование специального метода '__init__'
            self.a = a
    
        def __custom__(self): 
            # пользовательский специальный метод.
            pass

    Использование в качестве функций «Интернационализация (

    i18n)» или «Локализация (l10n

    Это просто соглашение, и оно не имеет никаких синтаксических особенностей. Таким образом, подчеркивание не означает что это обязательно функции i18n/l10n, и это просто соглашение, которое связывает библиотеки i18n/l10n с переменной подчеркивания, взятой из соглашения в языке C. Встроенная библиотека gettext, предназначенная для i18n/l10n, использует это соглашение. Так же Django поддерживает i18n/l10n, и то же использует это соглашение.

    # официальная документация : https://docs.python.org/3/library/gettext.html
    
    import gettext
    gettext.bindtextdomain('myapplication','/path/to/my/language/directory')
    gettext.textdomain('myapplication')
    _ = gettext.gettext
    
    # ...
    print(_('This is a translatable string.'))

    Для отделения цифр друг от друга

    Эта функция была добавлена в Python 3.6. Она используется для разделения цифр больших чисел для удобства чтения.

    dec_base = 1_000_000
    bin_base = 0b_1111_0000
    hex_base = 0x_1234_abcd
    print(dec_base) # 1000000
    print(bin_base) # 240
    print(hex_base) # 305441741

    Заключение

    В этой статье мы рассмотрели использования символа подчеркивание в Python. Хотя я давно уже программист на Python, я не знал некоторых из них, пока не написал этот пост. Надеюсь что вы как и я, узнали что нибудь новое о использование символа подчеркивании в Python.

    Оригинал: Understanding the underscore( _ ) of Python

    Была ли вам полезна эта статья?

    [6 / 4.5]

    Как нажать нижнее подчеркивание на клавиатуре

    Разработчики компании Microsoft Office значительно упростили работу сотрудников офисов при работе с документами. Excel, Word, Publisher, Power Point – основные приложения прикладного программного обеспечения. Но порой у пользователей появляются различные вопросы, например о том, как сделать нижнее подчеркивание на клавиатуре. Разъяснению этого мы и посвятим нашу статью.

    Клавиатура компьютера: разделение и расположение клавиш

    Для начала следует разобраться не в том, как сделать нижнее подчеркивание на клавиатуре, а в том, как на ней расположены кнопки. Ведь это является залогом успешного разрешения дел.

    Клавиатура разделяется на несколько блоков, в зависимости от предназначения клавиш. Так, различают клавиши:

    Следует учитывать, что клавиатуры могут быть совершенно разными. Поэтому перед выполнением каких-либо действий нужно убедиться в правильности манипуляций, чтобы случайно не нажать не на ту кнопку.

    Для удобства читателя здесь будут рассмотрены различные случаи решения вопроса о том, как сделать нижнее подчеркивание на клавиатуре, поскольку помочь в этом могут как «горячие» клавиши, так и контекстное меню.

    Нижнее тире на клавиатуре компьютера: алгоритм действий

    Но нужно разобраться, что каждый пользователь понимает, говоря о нижнем подчеркивании. Для некоторых это означает, что нужно подчеркнуть текст любым типом линии. Для других же – простановку нижнего тире. В этой статье будут рассмотрены оба случая, причем как для ноутбука, так и для компьютера.

    Чтобы выйти из тупика, решая, как сделать нижнее подчеркивание на клавиатуре компьютера, необходимо:

    • выделить фрагмент, который требует форматирования;
    • в версиях Word от 2007 и выше на панели инструментов следует найти кнопку «Ч», для чего в Word 2003 нужно либо найти эту команду на панели инструментов (но она будет без стрелки), либо зайти в главное меню «Формат» – «Шрифт» и выбрать в соответствующих окошках тип линии и ее цвет;
    • нажать на стрелку справа от нее;
    • выбрать любой тип линии.

    Если воспользоваться горячими клавишами, то для простого подчеркивания достаточно нажать CTRL + U. Кстати, для вызова меню «Формат» можно воспользоваться сочетанием CTRL + D.

    Если необходимо сделать пустые строчки для многочисленных записей рукой, следует зажать SHIFT и в алфавитно-цифровом блоке клавиатуры найти кнопку «–». Одновременное удержание двух клавиш прочертит так называемое нижнее тире.

    Для расположения линии в любом месте документа необходимо:

    • найти панель рисования;
    • выбрать кнопку с изображением линии;
    • установить начало черты в требуемом месте и протянуть на определенную длину.

    И, наконец, последний способ. Рекомендуется воспользоваться меню «Граница и заливка», вызываемым либо правой кнопкой мыши, либо через панель инструментов, либо через главное меню. Затем делать следующее:

    1. Выделить необходимый фрагмент.
    2. Вызвать «Границу и заливку» одним из способов.
    3. На вкладке «Граница» выбрать понравившийся тип линии, толщину, цвет.
    4. В окошке «Применить к:» следует выбрать одну из опций.
    5. Нажать ОК.

    Подчеркивание на клавиатуре ноутбука: алгоритм действий

    Чтобы не искать информацию по работе с Word’ом (к примеру, как сделать нижнее подчеркивание на клавиатуре ноутбука), не нужно делать большого отличия между двумя типами ЭВМ. Алгоритм действий выглядит так же. Единственное небольшое различие может быть в расположении клавиш управления. Но на изображении видно, что тот же SHIFT находится на своем месте, поэтому особых затруднений быть не должно.

    Единственное, с чем могут возникнуть проблемы при разрешении вопроса о том, как сделать нижнее подчеркивание на клавиатуре, – это отсутствие мыши. При использовании сенсорного поля на ноутбуке и подобных устройствах, при прочерчивании линий могут появиться разрывы. Поэтому только практика поможет справиться с поставленной задачей.

    Нижнее подчеркивание или подчерк — один из важнейших вспомогательных символов, который широко используется программистами, веб-мастерами и обычными пользователями ПК.
    Этот символ заменяет пробел там, где последний нельзя использовать — в названиях файлов и папок, в логинах и паролях от почтовых ящиков и профилей в соцсетях, в программных кодах. Также ряд из подчерков можно встретить на бланках, договорах и других документах — так обозначаются поля, которые нужно заполнять ручкой.
    Однако, иногда неопытные пользователи не сразу находят нужную клавишу. Мы, как всегда, не оставим наших читателей в беде: сегодня мы расскажем, как сделать нижнее подчеркивание на клавиатуре!

    Как сделать нижнее подчеркивание на обычной клавиатуре

    Как в русской, так и в английской раскладке клавиатуры за подчерк отвечает клавиша минуса или дефиса (-), расположенная между 0 и =. Есть два варианта ввода:

    • Предварительно нажать на Caps Lock, а потом на ««.
    • Удерживая Shift, нажать на ««.

    Однако, в некоторых иностранных раскладках подчерк заменяется другими символами, так что сперва стоит перейти на русскую или английскую. Для этого достаточно нажать Alt+Shift или настроить раскладку через языковую панель.

    Смена раскладки через языковую панель

    Осталось нажать Shift и — : заветная черточка отобразится на мониторе вашего ПК!

    Комбинация для нижнего подчеркивания

    Как сделать нижнее подчеркивания на клавиатуре MacOS

    На клавиатуре от Apple клавиша подчерка расположена там же — между 0 и =. Для нижнего подчеркивания на MacOS клавиатуре нужно сделать 2 простых шага:

      В зависимости от версии ОС, сменить раскладку с помощью ctrl+space или cmd+space.

    Смена раскладки на MacOS

    Комбинация для подчеркивания на MacOS

    Вот мы и разобрались, как сделать нижнее подчеркивание на клавиатуре. Надеемся, что статья помогла вам освоить что-то новое!

    Символ нижнего подчеркивания, который называют еще «земля» или «нижний слеш», для некоторых людей встречается для печатания на клавиатуре в первый раз и не все знают как его напечатать. Сегодня мы рассмотрим все способы вставки этого знака в любом редакторе текста и любой операционной системе, что WINDOWS, что MacOS.

    Способы решения

    Как сделать нижнее подчеркивание на компьютере? На данный момент юзеры могут решить поставленную задачу по-разному. Все зависит от личных предпочтений и от цели, которую хочется достигнуть в конечном итоге.

    Вот возможные варианты развития событий:

    • проставление символа при помощи клавиатуры;
    • вставка специального знака через функции текстового редактора;
    • использование настроек приложения для работы с текстом.

    Что именно выбрать? Ответ напрямую зависит от цели, которой в конечном итоге хочет достичь пользователь. Ниже мы рассмотрим все перечисленные приемы.

    Вставка на клавиатуре

    Нижнее подчеркивание на клавиатуре установить проще, чем кажется. Рассмотрим все возможные расклады на примере работы с MS Word.

    Что предстоит сделать для получения желаемого результата? В ходе проведенных манипуляций пользователь может просто отвести немного места в документе под рукописный текст. В файле появится подчеркнутая область, поверх которой напечатать буквы никак не выйдет.

    Как сделать нижнее подчеркивание? Для этого потребуется:

    • Открыть текстовый редактор.
    • Нажать на кнопку Shift на клавиатуре.
    • Держа предыдущий элемент управления нажатым, найти и зажать кнопку с символом «нижнее подчеркивание». Она располагается неподалеку от backspace.
    • Повторить операцию столько раз, сколько это необходимо.

    Дело сделано. Подчеркивание снизу установлено в той или иной области текстового документа. Но это только начало.

    Настройки редактора

    Как делать нижнее подчеркивание при помощи встроенных параметров текстового редактора? Подобный вариант развития событий обычно помогает отредактировать уже готовые предложения. Упомянутый символ появится сразу под текстом.

    Инструкция по воплощению задумки в жизнь имеет такой вид:

    • Выделить текст, который хочется отредактировать.
    • Нажать на кнопку «Ч» на функциональной панели «Ворда».

    Это один из приемов. Помимо него можно сделать так:

    Осуществить выделение текста, подлежащего форматированию.

    • Выбрать опцию «Формат»-«Шрифт».
    • Указать на «Подчеркнутый». В этом месте можно установить тип и цвет линий.
    • Сохранить изменения.

    Как сделать нижнее подчеркивание в тексте? Теперь мы знаем еще несколько приемов воплощения задумки в жизнь. Не стоит ограничиваться ими! Есть еще несколько советов, способных помочь юзеру.

    Важно: для быстрого подчеркивания можно выделить текст и нажать Ctrl + U.

    Специальные символы

    Символ «Нижнее подчеркивание» в Word можно отыскать в разделе специальных символов. При помощи него юзеры способны выделить немного места под рукописный текст. Результат окажется таким же, как и в случае с первым приемом.

    Для установки подчеркивания в нижней части строки, потребуется:

    • Установить курсор в том или ином месте. Подразумевается начало области с подчеркиванием.
    • Открыть пункт меню «Вставка».
    • Навести курсор и один раз нажать ЛКМ по строке «Специальный символ».
    • Отыскать упомянутый объект и дважды кликнуть по нему.

    Процесс повторяют столько раз, сколько это необходимо для того или иного документа. Данный прием не слишком популярен, но знать о нем должен каждый пользователь ПК.

    Границы и рисование

    Как сделать нижнее подчеркивание? Трудно поверить, но можно отдать предпочтение нестандартным вариантам. Обычно при их использовании ставится упомянутый знак, а поверх можно печатать текст.

    К примеру, некоторые устанавливают границы области подчеркивания. Делается это таким макаром:

    • Выделить область, которую хочется подчеркнуть.
    • Нажать на «Формат»-«Граница и заливка».
    • В поле «Образец» указать «Нижняя граница».
    • Выставить параметры подчеркивания.
    • Подтвердить корректировки.

    Это довольно интересный подход. Как сделать нижнее подчеркивание иначе? Справиться с задумкой предлагается при помощи графического редактора Word.

    Инструкция по применению метода имеет следующую форму:

    • Нажать на нижней панели на автофигуру «Линия».
    • Нарисовать графику в нужном месте.

    Бонусный способ вставки: копирование знака из этой статьи

    Вы можете просто взять вот этот знак «земли» «_», выделить его и скопировать к себе в текст, это самый простой способ, но если этот символ понадобится часто, то лучше запомнить как его печатать с клавиатуры.

    Так же смотрите, как можно в любой операционной системе вставить символ галочки, запятую сверху и градус Цельсия.

    Что такое подчеркивание?

    Обновлено: 31.12.2020, Computer Hope

    Альтернативно обозначается как нижняя линия , нижняя черта и нижняя штриховка , подчеркивание (_) — это символ, который находится на той же клавише клавиатуры, что и дефис. На рисунке показан пример подчеркивания в начале и в конце слова «Подчеркивание».

    Где на клавиатуре клавиша подчеркивания?

    Ниже представлен обзор клавиатуры компьютера с клавишей подчеркивания, выделенной синим цветом.

    Как создать символ «_»

    Создание символа «_» на клавиатуре США

    Чтобы создать подчеркивание с помощью клавиатуры США, удерживайте клавишу Shift и нажмите клавишу (дефис).

    Создание символа «_» на смартфоне или планшете

    Чтобы создать символ подчеркивания на смартфоне или планшете, откройте клавиатуру, нажмите клавиши с цифрами (123), затем перейдите в раздел (# + =) или символы (символ). Нажмите пальцем на клавишу «_».

    Что означает символ подчеркивания на компьютере?

    Подчеркивание обычно используется как альтернатива клавише пробела, когда пробел не допускается. Например, в компьютерном программировании переменная может называться $ my_variable с использованием подчеркивания вместо пробела, поскольку в имени переменной нельзя использовать пробелы.

    Подчеркивание и подчеркивание

    Подчеркивание отличается от подчеркивания. Если вы пытаетесь подчеркнуть любую букву, цифру или другой текст, следует использовать функцию подчеркивания.Подчеркивание, напротив, заменяет другой символ, например цифру, букву или символ; его нельзя использовать под другим персонажем.

    Подчеркивание в именах файлов

    Нередко использование подчеркивания в имени файла вместо пробела, особенно в Интернете. Однако, если вас беспокоит SEO, мы предлагаем использовать дефис вместо подчеркивания при разделении ключевых слов. Google рассматривает подчеркивание как объединитель, а дефис как разделитель. Таким образом, «компьютерная надежда» рассматривается как «компьютерная надежда», а «компьютерная надежда» рассматривается как «компьютерная надежда».«

    Какой другой символ на клавише подчеркивания?

    На клавиатурах США клавиша подчеркивания используется совместно с клавишей дефиса, которая может отображаться рядом с символом дефиса или над ним. Чтобы создать подчеркивание, удерживайте Shift , одновременно нажимая - над клавишей P .

    CamelCase, термины клавиатуры, пустое пространство

    Подчеркивание | Пунктуация | Грамматика | Глоссарий

    Знак подчеркивания [_] (также называемый подчеркиванием, подчеркиванием или подчеркиванием) — это символ, который изначально появился на пишущей машинке и в основном использовался для подчеркивания слов.

    Знак подчеркивания (_) также известен как подчеркивание, подчеркивание или подчеркивание и представляет собой символ, который изначально использовался на клавиатуре пишущей машинки и использовался просто для подчеркивания слов или чисел для выделения. Сегодня этот символ используется для создания визуального интервала в последовательности слов, где пробелы не допускаются. Чаще всего это происходит в именах и заголовках компьютерных файлов, адресах электронной почты и URL-адресах в Интернете. Некоторые компьютерные программы автоматически подчеркивают слово или предложение, которое начинается с подчеркивания или заканчивается подчеркиванием.

    Правила использования подчеркивания

    Подчеркивание используется различными способами в общении, как через Интернет, так и в методах рукописного ввода. В последние десятилетия он стал очень часто использоваться в компьютерных коммуникациях (как и знак @ в адресах электронной почты), поскольку он предоставляет еще один вариант, когда уже используется одна часто используемая версия адреса электронной почты или имени в Интернете. Если вы купите у нас образцы эссе, вы, скорее всего, получите файл с подчеркиванием в имени.

    Вот пример имени компьютерного файла из исторической статьи с использованием подчеркивания вместо пробелов, которое легче читается компьютерными программами:

    Final_Rough_Draft_History_Paper_032415

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

    Stacy_Pacey99 (at) comcast.net

    Вот пример URL-адреса в Интернете с использованием подчеркивания:

    Padiddle_doo.com

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

    _подчеркнутый_

    Некоторые компьютерные программы автоматически подчеркивают слово или предложение, которое начинается с подчеркивания или заканчивается подчеркиванием.

    Использование в других дисциплинах

    Не следует путать подчеркивание с символом тире, и для создания пустой строки в форме можно использовать ряд подчеркиваний; имейте в виду, что в строке могут быть крошечные разрывы, которые будут видны, если текст или шрифт будут увеличены в любой момент времени.Подчеркивание можно использовать для создания горизонтальной линии, набрав пустую строку, а затем изменив ориентацию изображения на экране или бумаги. Дефисы и дефисы связаны с подчеркиванием, но их применение в письменных сообщениях сильно различается.

    Подчеркивание также используется как диакритический знак в некоторых языках, особенно в языках египетской семьи языков. Эти языки включают египетский, языки, используемые в Габоне, изере, на котором говорят и пишут в Нигерии, и некоторые языки американских индейцев, такие как шошони и кайова.

    Первая система кодирования символов IBM была представлена ​​в 1964 году и использовала небольшой набор символов, из которых подчеркивание состояло из одного символа. В то время его называли «символом разрыва», потому что он разбивал простые строки текста и кода, как в «rate_of_pay». К 1967 году символ подчеркивания также использовался в ASCII, раннем языке компьютерного программирования.

    В компьютерном программировании принято использовать подчеркивание непосредственно перед именем файла, предназначенного для внутреннего использования в компьютерной библиотеке, или для файла заголовка.Ruby, Perl и Windows PowerShell также используют подчеркивание после определенных символов для создания специальной переменной.

    5 различных значений подчеркивания в Python | by Xiaoxu Gao

    Одиночное автономное подчеркивание _

    Одиночное автономное подчеркивание _ — допустимый символ для идентификатора Python, поэтому его можно использовать в качестве имени переменной.

    1. Представляет последнее выражение в интерпретаторе.

    Согласно документу Python, специальный идентификатор _ используется в интерактивном интерпретаторе для хранения результата последней оценки.Он хранится во встроенном модуле.

    Вот пример. Сначала мы проверяем, что _ не хранится во встроенном модуле, затем мы пишем одно выражение без имени переменной. Если мы снова проверим встроенный модуль, мы найдем в нем _ , и значение будет последней оценкой.

     >>> '_' в директории (__ builtins__) 
    Ложь
    >>> 1 + 1
    2
    >>> '_' в директории (__ builtins__)
    Истинно
    >>> _
    2

    2.Представьте значения, которые нам не нужны.

    Другой вариант использования одиночного подчеркивания _ — это представление значения, которое вам не важно или которое не будет использоваться позже в программе. Если вы примените к своей программе линтер, такой как Flake8, вы получите сообщение об ошибке от линтера (F841), если вам присвоено имя переменной, но оно никогда не использовалось. Эту проблему можно решить, назначив переменные, которые вам не нужны, _ .

    Давайте посмотрим код. Example1 использует _ для представления индекса каждого элемента в списке.В примере Example2 нас интересуют только год , месяц и день из кортежа, поэтому мы присваиваем _ остальным (час, минута, секунда). Но если мы распечатаем _ , мы получим только последнее выражение, которое равно 59.

    Из Python 3. * он поддерживает расширенную итеративную распаковку, что означает, что мы можем использовать * _ для представления нескольких значений. В Example3 , _ фактически представляет собой список значений, которые мы хотим игнорировать.

    Лямбда-функция также поддерживает _ . В Example4 лямбда-функция используется для monkeypatch function random.randint и всегда будет генерировать один и тот же результат. В этом случае входной аргумент больше не важен.

    3. Визуальный разделитель для группировки цифр

    Начиная с Python 3.6, подчеркивание _ также можно использовать в качестве визуального разделителя для группировки цифр. Как указано в PEP515, он работает с целыми числами, литералами с плавающей запятой и комплексными числами.

     целое число = 1_000 
    сумма = 1_000_000.1
    двоичный = 0b_0100_1110
    шестнадцатеричный = 0xCAFE_F00D
    >>> print (сумма)
    1000000.1
    >>> print (двоичный)
    78
    >>> print (шестнадцатеричный)
    3405705229

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

    Я не являюсь носителем языка. Извините за мой английский. Пожалуйста пойми.

    Знак подчеркивания (_) является особенным в Python.

    В то время как подчеркивание (_) используется только для переменных и функций типа «змея» на большинстве языков (конечно, не для всех), но в Python оно имеет особое значение.Если вы программист на Python, синтаксис для _ in range (10) , __init __ (self) может быть вам знаком.

    Этот пост объяснит, когда и как использовать подчеркивание (_), и поможет вам понять его.

    Существует 5 случаев использования подчеркивания в Python.

    1. Для сохранения значения последнего выражения в интерпретаторе.
    2. Для игнорирования определенных значений. (так называемое «мне все равно»)
    3. Для придания специального значения и функций именам переменных или функций.
    4. Для использования в качестве функций «Интернационализация (i18n)» или «Локализация (l10n)».
    5. Для разделения цифр буквального значения числа.

    Рассмотрим каждый случай.

    При использовании в интерпретаторе

    Интерпретатор python сохраняет последнее значение выражения в специальной переменной с именем ‘_’. Эта функция сначала использовалась в стандартном интерпретаторе CPython, и вы также можете использовать ее в других интерпретаторах Python.

     >>> 10 
    10
    >>> _
    10
    >>> _ * 3
    30
    >>> _ * 20
    600

    Для игнорирования значений

    Также используется подчеркивание для игнорирования конкретных значений.Если вам не нужны конкретные значения или значения не используются, просто присвойте значения , подчеркивание .

      # Игнорировать значение при распаковке 
    x, _, y = (1, 2, 3) # x = 1, y = 3
      # Игнорировать множественные значения. Это называется «Расширенная распаковка», которая доступна только в Python 3.x  
    x, * _, y = (1, 2, 3, 4, 5) # x = 1, y = 5
      # Игнорировать индекс 
    для _ в диапазоне (10):
    do_something ()
      # Игнорировать значение определенного местоположения  
    для _, val в list_of_tuple:
    do_something ()

    Придать особое значение именам переменных и функции

    Подчеркивание может чаще всего использоваться в «именовании».PEP8, который является директивой соглашения Python, вводит следующие 4 случая именования.

    _single_leading_underscore
    Это соглашение используется для объявления частных переменных, функций, методов и классов в модуле. Все, что связано с этим соглашением, игнорируется в из импорта модуля * .
    Однако, конечно, Python не поддерживает действительно частные, , поэтому мы не можем принудительно использовать некоторые частные, а также можем вызывать их напрямую из других модулей.Поэтому иногда мы говорим «слабый показатель внутреннего использования».

     _internal_name = 'one_nodule' # private variable 
    _internal_version = '1.0' # private variable
     
    class _Base: # private class
    _hidden_factor = 2 # private variable
     def __init __ (self, price): 
    self._price = price
     def _double_price (self): # private method 
    return self._price * self._hidden_factor
     def get_double_price (self): 
    return self._double_price ()

    , чтобы избежать конфликта single_trailing_underscore_
    с ключевыми словами Python или встроенными функциями.Возможно, вы не используете его часто.

     Tkinter.Toplevel (master, class _ = 'ClassName') # Избегайте конфликта с ключевым словом 'class' 
     list_ = List.objects.get (1) # Избегайте конфликта со встроенным типом 'list' 

    __double_leading_underscore
    Речь идет о синтаксисе, а не о соглашении. двойное подчеркивание будет искажать имена атрибутов класса, чтобы избежать конфликтов имен атрибутов между классами. (так называемое «искажение», которое означает, что компилятор или интерпретатор изменяют имена переменных или функций с некоторыми правилами, а не используют их как есть)
    Правило искажения Python добавляет «_ClassName» перед именами атрибутов, объявленных с помощью двойное подчеркивание.
    То есть, если вы напишете метод с именем «__method» в классе, имя будет искажено в форме «_ClassName__method».

     класс A: 
    def _single_method (self):
    pass
     def __double_method (self): # для искажения 
    pass
     class B (A): 
    def __double_method (self): # для искажения 9141 потому что проходит

    атрибутов, названных с двойным подчеркиванием , будут искажены, как указано выше, мы не сможем получить к нему доступ с помощью «ClassName .__ method».Иногда некоторые люди используют его как настоящие частные, используя эти функции, но это не является частным и не рекомендуется для этого. Дополнительные сведения см. В разделе «Именование Python».

    __double_leading_and_trailing_underscore__
    Это соглашение используется для специальных переменных или методов (так называемый «магический метод»), таких как __init__ , __len__ . Эти методы предоставляют особые синтаксические функции или выполняют особые функции. Например, __file__ указывает расположение файла Python, __eq__ выполняется, когда выполняется выражение a == b .
    Пользователь, конечно, может создать собственный специальный метод, это очень редкий случай, но часто может изменять некоторые встроенные специальные методы. (например, вы должны инициализировать класс с помощью __init__ , который будет выполняться сначала при создании экземпляра класса.)

     class A: 
    def __init __ (self, a): # используйте специальный метод '__init__' для инициализации
    self.a = a
     def __custom __ (self): # специальный специальный метод. вы можете почти не использовать его 
    проход

    Как функции интернационализации (i18n) / локализации (l10n)

    Это просто соглашение, не имеет никаких синтаксических функций.То есть, подчеркивание не означает i18n / l10n , это просто соглашение, которое связывает i18n / l10n с переменной подчеркивания было взято из соглашения C.
    Встроенная библиотека gettext , предназначенная для i18n / l10n , использует это соглашение, а Django, который является веб-фреймворком Python, поддерживает i18n / l10n , также вводит и использует это соглашение.

     gettext.bindtextdomain ('myapplication', '/ path / to / my / language / directory') 
    gettext.textdomain ('myapplication')
    _ = gettext.gettext
      print (_ ('Это переводимая строка.'))  

    Для разделения цифр буквального значения числа

    Эта функция была добавлена ​​в Python 3.6. Он используется для разделения цифр чисел с помощью подчеркивания для удобства чтения.

     dec_base = 1_000_000 
    bin_base = 0b_1111_0000
    hex_base = 0x_1234_abcd
     print (dec_base) # 1000000 
    print (bin_base) # 240
    print (hex_base) # 305441741

    Итак, print (hex_base) # 305441741 Python.Хотя я программист на Python, я не знал некоторых из них, пока не написал этот пост. В частности, i18n / l10n для меня очень новый.
    Как и я, я надеюсь, что вы получите некоторые полезные знания о и подчеркивании из этого поста.

    Далее я расскажу о более интересных вещах о Python. Спасибо.

    Обновление
    Добавлена ​​новая функция (PEP 515) была добавлена ​​в Python 3.6

    Hacker Noon — это то, с чего хакеры начинают свои дни.Мы являемся частью семьи @AMIfamily. Сейчас мы принимаем заявки и рады обсудить рекламные и спонсорские возможности.

    Чтобы узнать больше, прочтите нашу страницу «О нас», поставьте лайк / напишите нам на Facebook или просто напишите в Твиттере / DM @HackerNoon.

    Если вам понравилась эта история, мы рекомендуем прочитать наши последние технические истории и истории о тенденциях в области технологий. До следующего раза не воспринимайте реалии мира как должное!

    Связанные
    Теги

    Присоединяйтесь к Hacker Noon

    Создайте бесплатную учетную запись, чтобы разблокировать свой собственный опыт чтения.

    Подчеркивание (_) в Python — GeeksforGeeks

    Ниже приведены различные места, где _ используется в Python:

    1. Одинарное подчеркивание:
      • В интерпретаторе
      • После имени
      • Перед именем
    2. Двойное подчеркивание:
      1. __leading_double_underscore
      2. __before_after__

    Подчеркивание одиночное

    In Interpreter:
    _ возвращает значение последнего выполненного значения выражения в Python Prompt / Interpreter

    >>> = 10

    >>> b = 10

    >>> _

    Traceback (последний звонок последний):

    Файл "" , строка 1 , дюйм <модуль>

    NameError: name '_' is not defined

    >>> а + б

    20

    >>> _

    20

    >>> _ * 2

    40

    >>> _

    40

    >>> _ / 2

    20

    Для игнорирования значений:
    Несколько раз мы не хотим, чтобы возвращаемые значения в это время присваивали эти значения Underscore.Используется как одноразовая переменная.

    для _ в диапазоне ( 10 )

    печать ( «Тест» )

    a, b, _, _ = my_method (var1)

    После имени
    Python имеет свои ключевые слова по умолчанию, которые мы не можем использовать в качестве имени переменной.Чтобы избежать такого конфликта между ключевым словом python и переменной, мы используем подчеркивание после имени

    Пример:

    >>> класс MyClass ():

    ... def __init __ ( self ):

    ... печать ( "OWK" )

    >>> def my_defination (var1 = 1 , class_ = MyClass):

    ... печать (var1)

    ... печать ( класс_ )

    >>> my_defination ()

    1

    __main __. MyClass

    >>>

    Перед именем
    Подчеркивание перед именем переменной / функции / метода указывает программисту, что оно предназначено только для внутреннего использования и может быть изменено, когда класс захочет.

    Здесь префикс имени с подчеркиванием рассматривается как закрытый. Если указать из Import * , все имена, начинающиеся с _, не будут импортированы. Python не определяет действительно приватные, поэтому их можно вызывать напрямую из других модулей, если это указано в __all__, мы также называем это weak Private

    класс Префикс:

    ... def __init __ ( self ):

    ... собственный . Общедоступный = 10

    ... собственный ._private = 12

    >>> тест = Префикс ()

    >>> test.public

    10

    >>> test._private

    12

    Python class_file.py

    def public_api ():

    печать ( "public api" )

    по умолчанию _private_api ():

    печать ( "частный API" )

    Вызов файла из приглашения

    >>> из class_file import *

    >>> public_api ()

    общедоступный API

    >>> _private_api ()

    Traceback (последний звонок последний):

    Файл "" , строка 1 , дюйм <модуль>

    NameError: name '_private_api' is not defined

    >>> импорт class_file

    >>> class_file.public_api ()

    общедоступный API

    >>> файл_класса._private_api ()

    частный API

    Двойное подчеркивание (__)

    __leading_double_underscore
    Двойное подчеркивание в начале говорит интерпретатору python переписать имя, чтобы избежать конфликта в подклассе. Интерпретатор изменяет имя переменной с расширением класса и этой функцией, известной как Mangling.
    testFile.py

    класс Myclass ():

    def __init __ ( self ):

    сам .__ переменная = 10

    Вызов переводчика

    >>> импорт testFile

    >>> obj = testFile.Myclass ()

    >>> объект__ переменная

    Traceback (последний звонок последний):

    Файл "", строка 1 , дюйм

    AttributeError: экземпляр Myclass не имеет атрибута '__variable'

    nce не имеет атрибута Myclass

    >>> obj._Myclass__variable

    10

    В интерпретаторе Python Mangling измените имя переменной на ___.Таким образом, несколько раз он используется в качестве частного члена, потому что другой класс не может напрямую получить доступ к этой переменной. Основная цель __ — использовать переменную / метод только в классе. Если вы хотите использовать его вне класса, вы можете сделать общедоступным api

    .

    класс Myclass ():

    def __init __ ( self ):

    сам .__переменная = 10

    def func ( self )

    печать ( self .__ переменная)

    Вызов переводчика

    >>> импорт testFile

    >>> obj = testFile.Myclass ()

    >>> obj.func ()

    10

    __BEFORE_AFTER__
    Имя, начинающееся с __ и заканчивающееся таким же, рассматривает специальные методы в Python. Python предоставляет эти методы для использования в качестве перегрузки оператора в зависимости от пользователя.

    Python обеспечивает это соглашение, чтобы различать пользовательскую функцию и функцию модуля

    класс Myclass ():

    def __add __ ( self , a, b):

    печать (a * b)

    Вызов переводчика

    >>> импорт testFile

    >>> obj = testFile.Myclass ()

    >>> объект__ добавить __ ( 1 , 2 )

    2

    >>> объект__ добавить __ ( 5 , 2 )

    10

    Автор статьи: Нирми Шах . Если вам нравится GeeksforGeeks, и вы хотите внести свой вклад, вы также можете написать статью, используя свой вклад.geeksforgeeks.org или отправьте свою статью по адресу [email protected] Посмотрите, как ваша статья появляется на главной странице GeeksforGeeks, и помогите другим гикам.

    Пожалуйста, напишите комментарий, если вы обнаружите что-то неправильное, или если вы хотите поделиться дополнительной информацией по теме, обсужденной выше.

    Внимание компьютерщик! Укрепите свои основы с помощью курса Python Programming Foundation и изучите основы.

    Для начала подготовьтесь к собеседованию. Расширьте свои концепции структур данных с помощью курса Python DS .

    julia — Имя функции с ведущим знаком подчеркивания

    Обычно имена, начинающиеся с символа подчеркивания, используются для внутренних функций или переменных, но это лишь стилистическое соглашение. Их можно безопасно использовать в собственном коде, за исключением следующего правила:

    имен, состоящих только из символов подчеркивания, например, _ или __ , используются как черная дыра (вы можете писать в них, но не читать из них).

    Обычно имена, начинающиеся с _ , не экспортируются.Исключением в Base является функция __precompile__ .

    Ниже я даю более общий комментарий, но он связан с тем, о чем вы спрашиваете, и, исходя из моего опыта, это стоит знать.

    Имена функций и переменных определены в области модуля, что означает, что если вы создаете свой собственный модуль, имя может конфликтовать с тем же именем в другом модуле, и это не будет проблемой (независимо от того, есть ли у вас начальное подчеркивание в нем или нет). Тогда вам просто нужно указать имя:

      julia> модуль MyModule
           экспорт греха
           sin (x) = "грех ($ x)"
           конец
    Главный.MyModule
    
    julia> используя .MyModule
    
    Юлия> грех (1)
    ВНИМАНИЕ: как MyModule, так и Base экспортируют "sin"; использование его в модуле Main должно быть квалифицировано
    ОШИБКА: UndefVarError: грех не определен
    Трассировки стека:
     [1] область верхнего уровня отсутствует: 0
    
    Юлия> Base.sin (1)
    0,8414709848078965
    
    Юлия> MyModule.sin (1)
    "грех (1)"
      

    Единственный угловой случай, который обычно бывает сложным, заключается в том, что вам разрешено определять собственное имя функции в модуле (в частности, в модуле Main ) только в том случае, если это имя не было , импортированным из какого-либо другого модуля и ссылаясь на .Вот пример:

      Юлия> sin (x) = "sin ($ x)"
    sin (универсальная функция с 1 методом)
    
    Юлия> грех (10)
    "грех (10)"
    
    Юлия> соз (10)
    -0,832524
    
    Юлия> cos (x) = "cos ($ x)"
    ОШИБКА: ошибка в определении метода: функция Base.cos должна быть явно импортирована для расширения
    Трассировки стека:
     [1] область верхнего уровня отсутствует: 0
      

    Здесь и sin , и cos импортированы из Base . Вы определили sin в модуле Main перед его использованием, так что все в порядке.Однако вы использовали cos из Base , прежде чем пытаться определить его, поэтому это была ошибка.

    Подчеркивание в Python [«_» против «__»]

    Одиночное подчеркивание в Python «_» используется либо для того, чтобы сделать переменную отличной от ключевого слова Python (например, «float_ = 8»), либо для обозначения того, что ее следует использовать в частном контексте (например, «_var = 8» ).

    Двойное подчеркивание «__» (называемое « dunder» « ») используется для того, чтобы сделать атрибут или метод экземпляра закрытым (к нему нельзя получить доступ извне класса) — при использовании в качестве ведущего напоминания.При использовании в качестве включающего dunder (например, «__init__») он указывает, что это специальный метод в Python (называемый «магическим методом»).

    Из этой статьи и бонусного видео вы узнаете все тонкости подчеркивания в Python.

    Определения классов могут быть устрашающими. Иногда, если вы читаете упрощенные примеры кода из руководств по Python, вы можете поверить, что получили руководство. Но написание и чтение кода в реальном мире могут очень быстро стать уродливыми.

    Например, посмотрите следующий фрагмент кода из онлайн-руководства по Python:

     класс Длина:
    
        __metric = {«мм»: 0,001, «см»: 0,01, «м»: 1, «км»: 1000,
                    «дюйм»: 0,0254, «фут»: 0,3048, «ярд»: 0,9144,
                    "mi": 1609.344}
        
        def __init __ (self, value, unit = "m"):
            self.value = значение
            self.unit = unit
        
        def Converse2Metres (сам):
            вернуть self.value * Length .__ metric [self.unit]
        
        def __add __ (себя, другое):
            l = себя.Converse2Metres () + другое.
            return Length (l / Length .__ metric [self.unit], self.unit)
        
        def __str __ (сам):
            возврат str (self.Converse2Metres ())
        
        def __repr __ (сам):
            return "Length (" + str (self.value) + ", '" + self.unit + "')"
    
    если __name__ == "__main__":
        x = длина (4)
        печать (х)
        y = eval (repr (x))
    
        z = длина (4,5; ярд) + длина (1)
        печать (repr (z))
        печать (z)
     

    Если вы еще не потратили время, усилия и деньги на хорошее обучение Python, вы можете спросить: что не так с этим кодом?

    Успокоившись, вы можете понять, что главное, чего вы не понимаете, — это использование символа подчеркивания в Python.Во фрагменте кода подчеркивания, кажется, повсюду!

    Печально то, что если вы не поймете значения символа подчеркивания, вы никогда не сможете следить за подробными обсуждениями Python, вы не поймете многих разговоров о Python, не говоря уже о базах кода других людей.

    Для вашей карьеры — и для вашей способности общаться на Python — жизненно важно, чтобы вы тщательно изучили эти, казалось бы, небольшие фрагменты знаний.

    Что означает подчеркивание в объектной ориентации Python?

    Одиночное подчеркивание фактически не имеет особого значения.Вы можете использовать подчеркивание для разделения слов (например, this_is_a_long_variable = 42). Если вы начинаете имя атрибута экземпляра с подчеркивания (например, _var = 8), вы указываете читателю вашей базы кода, что этот атрибут экземпляра должен быть «частным». Другими словами, вы говорите им, что они не должны обращаться к нему извне класса. Однако это все еще возможно, как видно из следующего фрагмента кода:

     Мастер класса:
    
    
        # подчеркивание = визуальный разделитель
        изученный_at = "Хогвартс"
    
        # underscore = "держите меня в секрете"
        _wizards = []
    
    
    # не рекомендуется, но возможно:
    печать (Мастер._wizards)
    # []
    
    печать (Wizard.studied_at)
    # Хогвартс
     

    Двойное подчеркивание (которое профессионалы Python также называют «чертовски»), с другой стороны, имеет особое значение.

    Есть два случая:

    1. ведущие dunders: __var
    2. включающие dunders: __init__

    1. При запуске имени с dunders вы просите интерпретатор Python защитить его использование извне класса. К защищенному таким образом методу или атрибуту нельзя получить доступ напрямую извне (это все еще возможно, но вам необходимо активно обойти защиту).Вот пример:

     Мастер класса:
    
    
        # подчеркивание = визуальный разделитель
        изученный_at = "Хогвартс"
    
        # underscore = "держите меня в секрете"
        _wizards = []
    
        # включающие dunder = magic методы
        def __init __ (я, мана):
    
            self.mana = мана
            Wizard._wizards.append (самостоятельно)
    
            # завершающее подчеркивание = перезапись ключевого слова
            self.key_ = Верно
            
            # lead dunder = "принудительно сохранить конфиденциальность"
            self .__ supersecretphrase = "wingardium leviosa"
    
        def secret_trick (сам):
            вернуть себя.__сверхсекретная фраза
    
    tom = Волшебник (100)
    печать (tom .__ supersecretphrase)
    # AttributeError: объект 'Wizard' не имеет атрибута '__supersecretphrase'
    
    печать (tom.secret_trick ())
    # wingardium leviosa
     

    Вы не можете получить доступ к атрибуту экземпляра «__supersecretphrase» извне класса. Интерпретатор Python выдаст ошибку, если вы попытаетесь сделать это таким грубым способом. Но вы можете сделать это, вызвав не закрытый метод secret_trick (), который обращается к атрибуту частного экземпляра __supersecretphrase из определения класса.

    В чем причина такой защиты имен? Парадигма объектно-ориентированного программирования проистекает из идеи «инкапсуляции». Каждый объект инкапсулирует данные (атрибуты экземпляра) и методы для доступа к данным (методы экземпляра). Самая крайняя точка зрения — полностью запретить изменять атрибуты экземпляра извне. Это приводит к очень четкой семантике (каков эффект ваших объектов) и скрывает сложность от пользователя вашего класса.

    2.Заключая имя метода с помощью dunders (например, __init__), вы указываете, что это особый метод (профессионалы называют его на самом деле «волшебным методом» в Python — термин, который очень хорошо подходит для нашего примера;).

    Вероятно, вы уже довольно активно использовали специальный метод __init__ (конструктор) для создания новых экземпляров из описания класса.

    Но есть еще много специальных методов. Примером является метод __str__, который позволяет вам создать новое текстовое представление вашего объекта.

    Вот пример:

     класс Wizard1:
        def __init __ (я, мана):
            self.mana = мана
    
    
    класс Wizard2 (Wizard1):
        def __str __ (сам):
            return "Уровень маны волшебника:" + str (self.mana)
    
    
    tom = Wizard1 (99)
    печать (Том)
    # <__ main __. Объект Wizard1 по адресу 0x000001FEFF2ACA90>
    
    harry = Wizard2 (101)
    печать (Гарри)
    # Уровень маны волшебника: 101
    
    Класс Wizard1 здесь является классом верхнего уровня. Он определяет конструктор с помощью магического метода __init__.
     

    Класс Wizard1 здесь является классом верхнего уровня.Он определяет конструктор с помощью магического метода __init__.

    Класс Wizard2 — это класс, наследующий от класса верхнего уровня (мы рассмотрим наследование в более позднем письме). Другими словами, Wizard2 «наследует» все методы и атрибуты родительского класса Wizard1.

    Но помимо этого, Wizard 2 также определяет метод __str__, который возвращает текстовое представление текущего экземпляра, для которого он вызывается.

    При печати экземпляра Wizard1 (e.грамм. tom) текстовое представление по умолчанию действительно уродливо. Он дает вам только шестнадцатеричный код объекта — не очень полезно для понимания экземпляра. Но при печати экземпляра Wizard2 (например, harry) Python неявно вызовет ваш определенный метод __str__ и вернет текстовое представление, как вы его определили.

    Есть много других магических методов. Например, вы можете перезаписать поведение по умолчанию для сложения, вычитания, умножения и деления:

     Мастер класса:
    
        
        def __init __ (я, мана):
            себя.мана = мана
    
    
        def __add __ (себя, другое):
            Волшебник возврата (self.mana + other.mana)
    
    
    tom = Волшебник (99)
    harry = Волшебник (101)
    печать ((tom + harry) .mana)
    # 200
     

    В этом примере при сложении двух мастеров создается новый мастер, который имеет дополнительную ману обоих мастеров.

    Куда идти дальше?

    От вашего понимания основ зависит ваш успех в любой области, включая Python. Конечно, вы можете усердно учиться, чтобы узнать все о Python, но это может быть очень неэффективно.На мой взгляд, гораздо лучше передать вашу систему обучения в руки профессионального учителя, который дает вам небольшие ежедневные знания Python. Таким образом, вы можете добиться небольшого ежедневного прогресса, чтобы со временем стать мастером кода.

    Вот почему я создал свою серию 100% БЕСПЛАТНЫХ электронных писем на Pyton. Присоединяйтесь к 5439 читателям. Это весело! (… И совершенно бесплатно)

    Работая исследователем распределенных систем, доктор Кристиан Майер обнаружил свою любовь к обучению студентов, изучающих информатику.

    Чтобы помочь студентам достичь более высокого уровня успеха в Python, он основал веб-сайт по обучению программированию Finxter.