Python

随记,getpass 模块

2020-06-14  本文已影响0人  大梦三千秋

getpass 模块


有时候写脚本时,可能需要输入密码。因为需要脚本交互,所以不能够在脚本直接将密码硬编码,需要弹出提示输入。

input() 在我们早前学习的时候,可能会用到。但是这个在终端输入的时候,会显示输入的内容。而 getpass 这个模块,在当你需要在终端输入密码,但又不希望终端回显输入的密码时,可以用到。

下面是具体代码:

import getpass

# 这里直接显示输入的用户名
user = input("Enter your username: ")
# 密码使用 getpass 模块
pwd = getpass.getpass()

if login(user, pwd):
    print('Yes!')
else:
    print('No')

login() 是处理密码的函数,这里只用最简单的逻辑来查看 getpass 模块的功能实现效果。

# 简略 login 函数
def login(user, pwd):
    if user == 'admin' and pwd == '123456':
        return True
    return False

运行的效果:

失败 成功

还有一些需要注意的地方,有些系统可能不支持 getpass() 方法隐藏密码。不过 Python 也会提前给出相应的警告。

上一篇 下一篇

猜你喜欢

热点阅读