Search code examples
pythonpython-3.xpasswordsuser-input

How to hide password characters?


I created a simple program in which I added username and password entry (no GUI) by using an if else conditional expression.
When I type the username in program, it appears as simple text, and that's ok.
But when I type in the password field, it also appears as simple text.
I want the password instead to display * like all login prompts.

How do I change the password field to show => *****?

usr = (str(input('USERNAME : ')))
if usr == 'python':
  password = (str(input('PASSWORD : ')))
  if password == 'root':
    print ('login succesfull')
  else:
    print ('wrong password')
else:
  print ('wrong username')

Solution

  • There is getpass(), a function which hides the user input:

     import getpass
    
     password = getpass.getpass()
     print(password)
    
     mypass = getpass.getpass("PASSWORD : ")