1.集合类的操作。模拟用户登录,实现对多个用户信息的操作。 【需求】:对用户类的操作,添加用户(注册功能)、查找用户(登录功能)、修改用户(重置密码)等
时间: 2024-03-13 21:43:37 浏览: 50
好的,我可以帮您解答这个问题。
首先,我们需要定义一个用户类,包含用户名和密码两个属性,以及对应的添加用户、查找用户、修改用户的方法。代码示例如下:
```python
class User:
def __init__(self, username, password):
self.username = username
self.password = password
class UserManager:
def __init__(self):
self.users = []
def add_user(self, username, password):
user = User(username, password)
self.users.append(user)
def find_user(self, username):
for user in self.users:
if user.username == username:
return user
return None
def reset_password(self, username, new_password):
user = self.find_user(username)
if user:
user.password = new_password
return True
else:
return False
```
其中,User类表示一个用户对象,包含用户名和密码两个属性。UserManager类表示用户管理器,包含一个用户列表,以及添加用户、查找用户、修改用户的方法。具体实现如下:
- add_user方法接收用户名和密码参数,创建一个新的User对象,并将其添加到用户列表中。
- find_user方法接收用户名参数,遍历用户列表,查找指定用户名的用户对象并返回。
- reset_password方法接收用户名和新密码参数,调用find_user方法查找指定用户名的用户对象,如果找到则修改其密码,并返回True,否则返回False。
使用示例:
```python
user_manager = UserManager()
# 添加用户
user_manager.add_user('user1', 'password1')
user_manager.add_user('user2', 'password2')
# 查找用户
user = user_manager.find_user('user1')
if user:
print('Found user:', user.username)
else:
print('User not found')
# 修改密码
if user_manager.reset_password('user1', 'new_password'):
print('Password reset successful')
else:
print('User not found')
```
希望这个示例能帮到您!
阅读全文