> **Источник:** https://python-all.ru/3.13/library/getpass.html
>
> «Документация Python на русском» – неофициальный перевод официальной документации Python: версии от 2.6 до 3.16, полнотекстовый поиск, английский оригинал рядом с переводом. Эта Markdown-версия страницы предназначена для работы с LLM: вставьте её в ChatGPT, Claude или Cursor.

---

# `getpass` – портативный ввод пароля

**Исходный код:** [Lib/getpass.py](https://python-all.ru/src/3.13/Lib/getpass.py)

---

[Доступность](https://python-all.ru/3.13/library/intro.html#availability): не WASI.

Этот модуль не работает или недоступен на WebAssembly. Подробнее см. [платформы WebAssembly](https://python-all.ru/3.13/library/intro.html#wasm-availability).

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

#### `getpass.getpass(prompt='Password: ', stream=None)`

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

Если ввод без эхо-отображения недоступен, getpass() возвращается к выводу предупреждающего сообщения в *поток данных* и чтению из `sys.stdin` с генерацией [`GetPassWarning`](https://python-all.ru/3.13/library/getpass.html#getpass.GetPassWarning).

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

#### `exception getpass.GetPassWarning`

Подкласс [`UserWarning`](https://python-all.ru/3.13/library/exceptions.html#UserWarning), создаваемый, когда ввод пароля может отображаться на экране.

#### `getpass.getuser()`

Возвращает «логин» пользователя.

Эта функция последовательно проверяет переменные окружения `LOGNAME`, `USER`, `LNAME` и `USERNAME` и возвращает значение первой, установленной в непустую строку. Если ни одна не установлена, на системах, поддерживающих модуль [`pwd`](https://python-all.ru/3.13/library/pwd.html#module-pwd), возвращается логин из базы паролей; в противном случае возбуждается [`OSError`](https://python-all.ru/3.13/library/exceptions.html#OSError).

В целом эту функцию следует предпочитать [`os.getlogin()`](https://python-all.ru/3.13/library/os.html#os.getlogin).

Изменено в версии 3.13: Ранее возбуждались различные исключения, а не только [`OSError`](https://python-all.ru/3.13/library/exceptions.html#OSError).
