getpass
— Entrada de senha portátil¶
Código-fonte: Lib/getpass.py
Disponibilidade: not WASI.
Este módulo não funciona ou não está disponível em WebAssembly. Veja Plataformas WebAssembly para mais informações.
O módulo getpass
fornece duas funções:
- getpass.getpass(prompt='Password: ', stream=None, *, echo_char=None)¶
Solicita uma senha do usuário sem emiti-la. O usuário é solicitado usando a string prompt, cujo padrão é
'Password: '
. No Unix, o prompt é escrito no objeto arquivo ou similar stream usando o tratador de erros de substituição, se necessário. O stream padrão para o terminal de controle (/dev/tty
) ou se não estiver disponível parasys.stderr
(este argumento é ignorado no Windows).O argumento echo_char controla como a entrada do usuário é exibida durante a digitação. Se echo_char for
None
(padrão), a entrada permanece oculta. Caso contrário, echo_char deve ser uma string ASCII imprimível e cada caractere digitado será substituído por ela. Por exemplo,echo_char='*'
exibirá asteriscos em vez da entrada real.Se uma entrada sem exibição em tela não estiver disponível, getpass() recorre a exibir uma mensagem de aviso para stream e lê de
sys.stdin
e levantar de umGetPassWarning
.Nota
Se você chamar getpass de dentro do IDLE, a entrada pode ser feita no terminal de onde você iniciou o IDLE, e não na própria janela ociosa.
Alterado na versão 3.14: Adicionado o parâmetro echo_char para feedback do teclado.
- exception getpass.GetPassWarning¶
A subclasse
UserWarning
é levantada quando a entrada de senha pode acabar sendo exibida na tela.
- getpass.getuser()¶
Retorna o “nome de login” do usuário.
Esta função verifica as variáveis de ambiente
LOGNAME
,USER
,LNAME
eUSERNAME
, nesta ordem, e retorna o valor da primeiro que estiver definida como uma string não vazia. Se nenhuma estiver definida, o nome de login do banco de dados de senhas é retornado em sistemas que oferecem suporte ao módulopwd
, caso contrário, uma exceçãoOSError
é levantada.Em geral, esta função deve ter preferência sobre
os.getlogin()
.Alterado na versão 3.13: Anteriormente, várias exceções além de apenas
OSError
eram levantadas.