欢迎访问宙启技术站
智能推送

创建LoginForm()登录表单:简单易用又安全可靠

发布时间:2023-12-27 15:07:22

LoginForm()是一个登录表单类,它旨在提供简单易用、安全可靠的用户登录体验。该类包含了输入用户名和密码的字段,以及验证用户输入的方法。以下是该类的代码和使用例子。

import hashlib

class LoginForm():
    def __init__(self):
        self.username = ""
        self.password = ""

    def set_credentials(self, username, password):
        self.username = username
        self.password = self._hash_password(password)

    def _hash_password(self, password):
        return hashlib.sha256(password.encode()).hexdigest()

    def authenticate(self, username, password):
        hashed_password = self._hash_password(password)

        if self.username == username and self.password == hashed_password:
            return True
        else:
            return False

上述代码定义了一个LoginForm类,其中包含了用于设置和验证登录凭据的方法。LoginForm类的构造函数初始化了用户名和密码字段,set_credentials()方法用于设置用户名和密码,_hash_password()方法将密码进行哈希处理,authenticate()方法用于验证用户输入的用户名和密码是否与已设置的凭据匹配。

下面是该类的使用例子:

login_form = LoginForm()

#       次设置登录凭据
login_form.set_credentials("username", "password")

# 使用正确的凭据进行验证
if login_form.authenticate("username", "password"):
    print("登录成功!")
else:
    print("用户名或密码不正确!")

# 使用错误的凭据进行验证
if login_form.authenticate("wrong_username", "wrong_password"):
    print("登录成功!")
else:
    print("用户名或密码不正确!")

在上述例子中,我们首先创建了一个LoginForm实例login_form,然后使用set_credentials()方法设置了用户名为"username",密码为"password"的登录凭据。接下来,我们使用正确的凭据进行验证时,authenticate()方法返回True,表示登录成功。而当使用错误的凭据进行验证时,authenticate()方法返回False,表示登录失败。

通过使用LoginForm类,我们可以方便地创建简单易用、安全可靠的登录表单,并且可以通过验证用户输入的凭据来判断用户登录是否成功。以上是一个示例,你可以根据实际需求进行修改和扩展。