Previous topic

15.5. logging — Logging facility for Python

Next topic

15.7. platform — Access to underlying platform’s identifying data.

This Page

15.6. getpass — Portable password input

The getpass module provides two functions:

getpass.getpass([prompt[, stream]])

Prompt the user for a password without echoing. The user is prompted using the string prompt, which defaults to 'Password: '. On Unix, the prompt is written to the file-like object stream. stream defaults to the controlling terminal (/dev/tty) or if that is unavailable to sys.stderr (this argument is ignored on Windows).

If echo free input is unavailable getpass() falls back to printing a warning message to stream and reading from sys.stdin and issuing a GetPassWarning.

Availability: Macintosh, Unix, Windows.

Changed in version 2.5: The stream parameter was added.

Changed in version 2.6: On Unix it defaults to using /dev/tty before falling back to sys.stdin and sys.stderr.

Note: If you call getpass from within IDLE, the input may be done in
the terminal you launched IDLE from rather than the idle window itself.

exception exception getpass.GetPassWarning

A UserWarning subclass issued when password input may be echoed.

getpass.getuser()

Return the “login name” of the user. Availability: Unix, Windows.

This function checks the environment variables LOGNAME, USER, LNAME and USERNAME, in order, and returns the value of the first one which is set to a non-empty string. If none are set, the login name from the password database is returned on systems which support the pwd module, otherwise, an exception is raised.