云盘管理系统
项目简介
云盘管理系统是一个简单的命令行应用,用户可以通过该系统进行文件的上传、下载和查看操作。系统支持用户注册和登录,确保每个用户的数据独立管理。
功能
-
用户管理
- 注册:用户可以注册新账户,输入用户名和密码进行创建。
- 登录:用户可以通过用户名和密码登录系统。
- 退出:用户可以选择退出当前登录的账户。
-
文件管理
- 查看文件:已登录用户可以查看自己网盘中的文件列表。
- 上传文件:用户可以将本地文件上传到自己的网盘中。
- 下载文件:用户可以从网盘中下载指定的文件。
使用说明
启动程序
- 运行 Python 脚本文件以启动命令行界面。
命令格式
- 注册:
register 用户名 密码 确认密码
- 登录:
login 用户名 密码
- 查看文件:
ls
- 上传文件:
upload 本地文件
- 下载文件:
download 网盘文件
- 退出登录:
logout
- 退出程序:
exit
细节
- 系统使用字典来存储用户信息及其对应的文件。
- 文件上传时,文件名作为占位符存储。
- 每个用户的数据是独立的,不同用户无法访问其他用户的文件。
- 所有输入命令均区分大小写。
需求文档
技术要求
- Python 3.x
- 运行环境:命令行/终端
需求功能
- 注册新用户并进行验证。
- 允许用户登录和退出。
- 管理用户的文件上传和下载。
- 显示用户的网盘文件列表。
附加功能(可选)
-
增加文件删除功能。
pop 文件名
-
补充其他函数的 参数数量验证
ls、download、upload... 没有进行 参数数量验证
参考代码
# 用户信息存储容器
users = {}
# 初始一个登录状态变量
login_user = 0 # 如果login_user是0 说明 未登录 ,登录就是 用户名
# 使用提示
print("欢迎使用网盘管理系统")
print("注册 :register 用户名 密码 确认密码")
print("登录 :login 用户名 密码")
print("查看 :ls")
print("上传 :upload 本地文件")
print("下载 :download 网盘文件")
print("退出登录:logout")
print("退出程序:exit")
while True:
# 让用户进行命令的输入
tip = '未登录' if login_user == 0 else login_user
cmd = input(f"({tip}):").strip().split(" ")
# 确定命令的类型
action = cmd[0]
if action == "":
continue
# 注册
if action == "register":
# 验证用户输入的参数个数是否正确
if len(cmd) != 4:
print("参数数量错误 ps:register 用户名 密码 确认密码")
continue
username, password, re_password = cmd[1], cmd[2], cmd[3]
if password == re_password:
if username in users.keys():
print('该用户名已被注册!')
continue
# 初始化用户信息
user_info = {
'password': password,
'files': [],
}
users[username] = user_info
print(f'{username},注册成功')
else:
print('两次密码不一致')
continue
elif action == "login":
# 验证用户输入的参数个数是否正确
if len(cmd) != 3:
print("参数数量错误 ps:login 用户名 密码")
continue
username, password = cmd[1], cmd[2]
# 1.先判断用户名是否存在
if username in users.keys():
# 2.再判断密码是否和 users的一致
if password == users[username]['password']:
print("登录成功")
login_user = username
else:
print('密码错误')
else:
print('用户名不存在')
elif action == 'ls':
if login_user != 0:
print(users[login_user]['files'])
else:
print('请先登录!')
elif action == 'upload':
if login_user != 0:
users[login_user]['files'].append(cmd[1])
print(cmd[1], '上传成功!')
else:
print('请先登录!')
elif action == 'download':
if login_user != 0:
# 先保证 网盘文件已经存在
if cmd[1] in users[login_user]['files']:
print(cmd[1], '下载成功')
else:
print('该文件网盘不存在')
else:
print('请先登录!')
elif action == 'logout':
if login_user != 0:
print('退出登录')
login_user = 0
else:
print('请先登录!')
elif action == 'exit':
print("退出程序")
break
elif action == 'test':
print(users)
else:
print(f"{action} 不是可识别的命令")
标签:文件,登录,管理系统,云盘,cmd,user,print,login
From: https://blog.csdn.net/2301_80202670/article/details/143507348