8.8.1 Esempio

Ecco una funzione che chiede una password senza mostrarne l'inserimento dei caratteri. Notate che questa tecnica utilizza una chiamata separata a tcgetattr() e un'istruzione try ... finally per assicurarsi che siano ripristinati esattamente i vecchi attributi tty, senza riguardo a quanto avviene:

def getpass(prompt = "Password: "):
    import termios, sys
    fd = sys.stdin.fileno()
    old = termios.tcgetattr(fd)
    new = termios.tcgetattr(fd)
    new[3] = new[3] & ~termios.ECHO          # lflags
    try:
        termios.tcsetattr(fd, termios.TCSADRAIN, new)
        passwd = raw_input(prompt)
    finally:
        termios.tcsetattr(fd, termios.TCSADRAIN, old)
    return passwd

Vedete Circa questo documento... per informazioni su modifiche e suggerimenti.