python用户管理系统(加密)

在用户管理系统中使用哈希算法对用户密码进行加密处理

python 复制代码
import hashlib

users = []

# 用户类,包含基本信息
class User:
    def __init__(self, name, password, email=None):
        self.name = name
        self.password = self._encrypt_password(password)  # 加密密码
        self.email = email  # 可选的电子邮件字段

    def _encrypt_password(self, password):
        # 使用SHA-256哈希函数对密码进行加密
        sha256 = hashlib.sha256()
        sha256.update(password.encode('utf-8'))
        return sha256.hexdigest()

    def __str__(self):
        return f"User(Name: {self.name}, Password: {self.password}, Email: {self.email})"

# 用户管理系统
class UserManager:
    def __init__(self):
        self.users = []

    def add_user(self, user):
        self.users.append(user)
        print(f"User {user.name} added successfully.")

    def get_user(self, name):
        for user in self.users:
            if user.name == name:
                return user
        return None

    def list_users(self):
        for user in self.users:
            print(user)

user_manager = UserManager()

# 添加用户
user1 = User('张三', 'password123')
user2 = User('李四', 'lisi963')
user_manager.add_user(user1)
user_manager.add_user(user2)

# 列出所有用户
print("List of users:")
user_manager.list_users()

# 根据用户名获取用户信息
lisi = user_manager.get_user('李四')
if lisi:
    print(lisi)
相关推荐
于指尖飞舞11 小时前
java后端面试题(jvm极简)
java·开发语言·jvm
java_cj11 小时前
从kubectl源码学Cobra:打造专业级Go命令行工具的完整实践
运维·开发语言·后端·云原生·golang·kubernetes·k8s
AZaLEan__12 小时前
JavaScript 基础语法
开发语言·javascript·ecmascript
copyer_xyf12 小时前
Agent MCP
后端·python·agent
闵孚龙12 小时前
Autograd 自动求导:PyTorch 训练模型的发动机
人工智能·pytorch·python
影视飓风TIM12 小时前
C++ 核心语法笔记:拷贝构造、深浅拷贝与运算符重载
java·开发语言·javascript
jieyucx12 小时前
Go MongoDB 实战完全指南|从连接、CRUD、BSON结构体映射到高并发避坑全解
开发语言·mongodb·golang
Shadow(⊙o⊙)12 小时前
信号2.0,深入信号三张表block pending handlers,core文件的使用,信号执行逻辑:CPU虚拟内存物理内存,时钟源,软中断。
linux·运维·服务器·开发语言·c++
FL162386312912 小时前
基于CNN深度学习算实现手写字母识别系统python源码+训练好的模型+说明文档
python·深度学习·cnn
极创信息12 小时前
信创产品适配测试认证,域名和SSL是必须的吗?
java·开发语言·网络·python·网络协议·ruby·ssl