read - Eingabe des Befehlszeilenpassworts in Python




python read input password (4)

Verwenden Sie getpass.getpass() für diesen Zweck.

getpass.getpass - Fordert den Benutzer zur Eingabe eines Passworts auf, ohne dass ein Echo ausgegeben wird

Sie wissen, wie in Linux, wenn Sie einige Sudo-Sachen versuchen, sagt es Ihnen, das Passwort einzugeben und während Sie tippen, wird nichts im Terminalfenster gezeigt (das Passwort wird nicht gezeigt)?

Gibt es eine Möglichkeit, das in Python zu tun? Ich arbeite an einem Skript, das so sensible Informationen benötigt und möchte, dass es beim Eintippen verborgen bleibt.

Mit anderen Worten, ich möchte das Passwort vom Benutzer erhalten, ohne das Passwort zu zeigen.



import getpass
p = str("null")  # user's input start value
pas = str("password")  # password value
while p != pas:
    p = getpass.getpass("Insert your password: ")  # password input
print("ay")  # when you get the password, the output is "ay"

import sys
import msvcrt

passwor = ''
while True:
    x = msvcrt.getch()
    if x == '\r':
        break
    sys.stdout.write('*')
    passwor +=x

print '\n'+passwor

Dieser Code wird anstelle von jedem Buchstaben Astrix drucken





hidden