当您创建一些需要密码保护才能运行的python程序时,我们将使用getpass()和getuser()模块的帮助。它们具有多种功能,可用于管理密码保护以及密码检索等。在本文中,我们将看到如何在有无回显屏幕的情况下键入密码。下面是处理它的不同方法。
以下代码将保存到文件(logon.py)。getpass()函数输出提示,然后从用户读取输入,直到他们按回车
import getpass try: pwd = getpass.getpass() except Exception as err: print('Error Occured : ', err) else: print('Password entered :', pwd)
运行上面的代码给我们以下结果-
$ python logon.py Password: Password entered: abracadbra
接下来,我们可以增强代码以提示用户一个安全性问题。这个问题可以帮助用户重新找回密码。
import getpass pwd = getpass .getpass(prompt = 'What is your favorite colour?') if pwd == 'Crimson': print('You are in!') else: print('Try Again')
运行上面的代码给我们以下结果-
$ python logon.py 'What is your favorite colour? You are in!
有时我们需要知道用于运行脚本的登录名。这可以通过使用getuser()函数来实现。
import getpass user = getpass.getuser() while True: pwd = getpass.getpass("User Name : ",user) if pwd == 'Crimson': print("You are in!") else: print("The password you entered is wrong.")
运行上面的代码给我们以下结果-
User Name: user1 You are in !