请用python写一个用户管理系统,包括功能:登录注册 查询 删除 增加 更改 使用封装
时间: 2024-03-26 08:41:32 浏览: 22
下面是一个基于面向对象编程和封装思想的用户管理系统,包括登录、注册、查询、删除、增加和更改功能。
```python
class User:
def __init__(self, username, password, email):
self.username = username
self.password = password
self.email = email
def __str__(self):
return f"Username: {self.username}, Email: {self.email}"
class UserManagement:
def __init__(self):
self.users = []
def register(self, username, password, email):
for user in self.users:
if user.username == username:
print("Username already exists.")
return False
new_user = User(username, password, email)
self.users.append(new_user)
print(f"User {username} registered successfully.")
return True
def login(self, username, password):
for user in self.users:
if user.username == username and user.password == password:
print(f"User {username} logged in successfully.")
return True
print("Invalid username or password.")
return False
def search(self, username):
for user in self.users:
if user.username == username:
print(user)
return user
print("User not found.")
return None
def delete(self, username):
for user in self.users:
if user.username == username:
self.users.remove(user)
print(f"User {username} deleted successfully.")
return True
print("User not found.")
return False
def add(self, user):
for u in self.users:
if u.username == user.username:
print("Username already exists.")
return False
self.users.append(user)
print(f"User {user.username} added successfully.")
return True
def update(self, username, password, email):
for user in self.users:
if user.username == username:
user.password = password
user.email = email
print(f"User {username} updated successfully.")
return True
print("User not found.")
return False
# Example usage
um = UserManagement()
um.register("alice", "password1", "alice@example.com")
um.register("bob", "password2", "bob@example.com")
um.login("alice", "password1")
um.login("alice", "wrong_password")
um.search("alice")
um.search("charlie")
um.delete("bob")
um.delete("charlie")
um.add(User("charlie", "password3", "charlie@example.com"))
um.add(User("alice", "password4", "alice@example.com"))
um.update("alice", "new_password", "new_email@example.com")
um.update("charlie", "password5", "charlie@example.com")
```
说明:
- `User`类表示一个用户,包含用户名、密码和邮箱。
- `UserManagement`类表示用户管理系统,包含多个用户,可以注册、登录、查询、删除、增加和更改用户信息。
- `register`方法用于注册新用户,检查用户名是否已经存在,如果不存在则创建新用户并添加到列表中。
- `login`方法用于登录已注册用户,检查用户名和密码是否匹配,如果匹配则登录成功。
- `search`方法用于查找已注册用户,根据用户名查找用户,如果找到则返回用户信息。
- `delete`方法用于删除已注册用户,根据用户名查找用户,如果找到则删除用户。
- `add`方法用于添加已注册用户,检查用户名是否已经存在,如果不存在则添加用户到列表中。
- `update`方法用于更新已注册用户信息,根据用户名查找用户,如果找到则更新用户的密码和邮箱。
以上代码只是一个简单的示例,实际应用中需要考虑更多的安全性和错误处理。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![py](https://img-home.csdnimg.cn/images/20210720083646.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)