Прочитать пароль от stdin

Сценарий: интерактивная программа Python CLI, которая нуждается в пароле. Это означает, что нет никакого GUI-решения.

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

read -s 

Есть что-то подобное для Python? То есть,

 password = raw_input('Password: ', dont_print_statement_back_to_screen) 

Альтернатива: перед тем, как отправить их обратно на экран (например, стиль браузера), замените введенные символы «*».

    2 Solutions collect form web for “Прочитать пароль от stdin”

     >>> import getpass >>> pw = getpass.getpass() 

    Да, getpass : «Подскажите пользователю пароль без эха».

    Редактировать: я еще не играл с этим модулем, так что это то, что я только что приготовил (не удивлюсь, если вы найдете похожий код повсюду):

     import getpass def login(): user = input("Username [%s]: " % getpass.getuser()) if not user: user = getpass.getuser() pprompt = lambda: (getpass.getpass(), getpass.getpass('Retype password: ')) p1, p2 = pprompt() while p1 != p2: print('Passwords do not match. Try again') p1, p2 = pprompt() return user, p1 

    (Это Python 3.x, используйте raw_input вместо input при использовании Python 2.x.)

    Python - лучший язык программирования в мире.