背景介绍
随着用户需求的增加,系统需要实现注册、登录和密码修改功能,同时支持本地文件存储密码,避免依赖外部服务。本系统基于Python实现,采用简单文件存储方式,确保代码简洁且可运行。
思路分析
- 注册功能
- 用户输入注册用户名和密码,系统先从本地文件中读取密码,若文件未保存则写入。
- 存储逻辑基于文件读写,无需处理加密,直接将密码保存至文件中。
- 登录验证
- 用户输入用户名和密码,系统通过本地文件读取密码验证,若匹配则提示成功,并保存密码。
- 密码修改功能
- 用户输入用户名和新密码,系统验证密码是否与本地文件一致,若匹配则更新文件内容。
代码实现
1. 本地文件存储密码
# 存储密码的文件路径
password_file = "passwords.txt"
# 定义密码文件的写入函数
def store_password(username, password):
try:
with open(password_file, 'w', encoding='utf-8') as f:
f.write(f"{username} {password}\n")
except Exception as e:
print("Error storing password:", e)
# 读取密码文件
def read_password():
try:
with open(password_file, 'r', encoding='utf-8') as f:
return f.read().strip()
except Exception as e:
print("Error reading password:", e)
2. 注册功能
# 注册用户
def register_user(username, password):
try:
if not read_password():
store_password(username, password)
print("注册成功!密码已保存到文件中:", username, password)
else:
print("注册失败!密码已存在本地文件中。")
except Exception as e:
print("Error registering ", e)
3. 登录验证
# 登录功能
def login_user(username, password):
try:
stored_password = read_password()
if stored_password == f"{username} {password}":
print("登录成功!")
return True
else:
print("登录失败!验证失败。")
return False
except Exception as e:
print("Error validating login:", e)
4. 密码修改功能
# 修改密码功能
def update_password(username, new_password):
try:
# 读取当前密码
current_password = read_password()
# 判断是否匹配
if current_password == f"{username} {new_password}":
store_password(username, new_password)
print("密码修改成功!")
else:
print("密码修改失败!验证失败。")
except Exception as e:
print("Error updating password:", e)
5. 总结
本系统实现了注册、登录和密码修改功能,密码存储基于本地文件,无需依赖外部服务。代码实现简洁,可运行在1~3天内,具备基础学习价值。系统通过文件读写实现密码存储,并验证登录操作,确保用户使用安全、易用的本地存储方式。
参考说明
- 本系统采用Python实现,密码文件存储在本地,确保系统独立运行。
- 代码中包含注释解释关键步骤,便于用户理解。