Spec-Zone.ru › Python 3.14

getpass — Переносимый ввод пароля

Исходный код: Lib/getpass.py

Доступность: не WASI.

Этот модуль не работает или недоступен в WebAssembly. Дополнительную информацию см. в разделе Платформы WebAssembly.

Модуль getpass предоставляет две функции:

getpass.getpass(prompt='Password: ', stream=None, *, echo_char=None)

Запрашивает у пользователя пароль, не отображая ввод. Для запроса используется строка prompt, по умолчанию равная 'Password: '. В Unix запрос записывается в файловый объект stream с использованием обработчика ошибок replace, если это необходимо. По умолчанию stream указывает на управляющий терминал (/dev/tty), а если он недоступен — на sys.stderr (в Windows этот аргумент игнорируется).

Аргумент echo_char определяет, как отображается ввод пользователя во время набора. Если echo_char равен None (значение по умолчанию), ввод остаётся скрытым. В противном случае echo_char должен быть одним печатным символом ASCII, которым заменяется каждый введённый символ. Например, echo_char='*' будет отображать звёздочки вместо введённых символов.

Если ввод без отображения недоступен, getpass() выводит предупреждение в stream, считывает данные из sys.stdin и вызывает GetPassWarning.

Примечание

Если вызвать getpass из IDLE, ввод может выполняться в терминале, из которого запущена IDLE, а не в самом окне IDLE.

Примечание

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

Изменено в версии 3.14: Добавлен параметр echo_char для обратной связи при вводе с клавиатуры.

exception getpass.GetPassWarning

Подкласс UserWarning, вызываемый, когда ввод пароля может отображаться.

getpass.getuser()

Возвращает «имя для входа» пользователя.

Эта функция проверяет переменные среды LOGNAME, USER, LNAME и USERNAME по порядку и возвращает значение первой из них, для которой задана непустая строка. Если ни одна из них не задана, в системах, поддерживающих модуль pwd, возвращается имя для входа из базы данных паролей; в противном случае вызывается исключение OSError.

Как правило, этой функции следует отдавать предпочтение перед os.getlogin().

Изменено в версии 3.13: Ранее вызывались различные исключения, а не только OSError.

© 2001 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.14/library/getpass.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API