在Python中获取命令行密码input

你知道如何在Linux中,当你尝试一些Sudo的东西,它告诉你input密码,当你键入,terminal窗口中没有显示(密码不显示)?

有没有办法在Python中做到这一点? 我正在处理一个脚本,需要如此敏感的信息,并希望它被隐藏,当我键入它。

换句话说,我想从用户那里得到密码而不显示密码。

使用getpass.getpass()

 import getpass pswd = getpass.getpass('Password:') 

这适用于Linux,Windows和Mac。

为此使用getpass 。

getpass.getpass – 提示用户input密码而不回显

 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 getpass password = getpass.getpass("Enter your Password:") print(password) 

这将input你的密码从命令行显示(如Linux的sudo密码),然后打印你input的密码。

输出:

 newuser@PC:~/Desktop$ python a.py Enter your password: 1234 newuser@PC:~/Desktop$ 
 import sys import msvcrt passwor = '' while True: x = msvcrt.getch() if x == '\r': break sys.stdout.write('*') passwor +=x print '\n'+passwor 

此代码将打印astrix而不是每个字母