2011-01-06 12 views

Odpowiedz

43

Zastosowanie getpass:

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

+1 do czytania ze zrozumieniem, +1 do odpowiedzi ;-) –

+1

Chciałbym postać po znaku, jak getch(), ale platforma krzyżowa –

+0

@ tm1rbrt W takim przypadku [curses] (http://docs.python.org/ library/curses.html) to prawdopodobnie najlepsza opcja. –

0

Może moduł 'console' to tylko zakład (to trochę „widelec” modułu curses dla Uniksa), jednak nie widziałem wszystko związane z terminala echo wyłączenie w jego na stronie głównej, możesz sam spróbować zagłębić się w nią.

+0

To nie jest tak wiele platform w tym momencie --- obsługuje tylko Windows przez Windows 2000. – JasonFruit

4

Istnieje również inne rozwiązanie (przynajmniej w systemach uniksowych, nie wiem, czy działa w systemie Windows). Po prostu wyłącz wyjście konsoli i użyj parametru raw_input:

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

Ostrzegam, że 'stty -echo' będzie trwało, dopóki nie zostanie wywołane' stty echo'. Obejmuje to utrzymywanie się poza sesją Pythona, jeśli 'raw_input' spowoduje, że python zostanie zakończony. –

Powiązane problemy