2011-01-06 19 views

Respuesta

43

Uso getpass:

>>> from getpass import getpass 
>>> getpass() 
Password: 
'secret' 
+7

+1 para leer la mente, +1 para la respuesta ;-) –

+1

Me gustaría carácter por carácter como getch() pero plataforma cruzada –

+0

@ tm1rbrt En ese caso, [maldiciones] (http://docs.python.org/ library/curses.html) es probablemente su mejor opción. –

0

Tal vez el módulo 'console' es su única apuesta (que es un poco 'tenedor' del módulo maldiciones para Unix), sin embargo no he visto nada relacionado con eco terminal de la desactivación en su página de inicio, puede tratar de profundizar en ella por sí mismo.

+0

No es esa multiplataforma en este punto --- solo es compatible con Windows a través de Windows 2000. – JasonFruit

4

También hay otra solución (al menos en los sistemas Unix, no sé si esto funciona en Windows). Simplemente apague la salida de la consola y use raw_input:

os.system("stty -echo") 
password = raw_input('Enter Password:') 
os.system("stty echo") 
print "\n" 
+1

Tenga en cuenta que 'stty -echo' persistirá hasta que se llame a' stty echo'. Esto incluye persistir fuera de la sesión de python, si 'raw_input' hace que python salga. –

Cuestiones relacionadas