一、需求分析
主要功能:
1 登录
2 注册
3 注销
4 购物
5 查看购物车
6 退出系统
二、系统代码
# 定义用户信息列表
username_list = []
# 定义商品字典
prize_dict = {
'0': '《Python全栈开发》',
'1': '《Linux自动化运维》',
'2': '《Go语言实战开发》',
'3': '《Docker教程》',
'4': '《前端开发》',
'5': '《爬虫教程》'
}
# 定义购物车字典
shopping_car_dict = {}
# 定义全局用户
def inp_username_pwd():
username_inp = input('请输入你的用户名:').strip()
pwd_inp = input('请输入你的密码:').strip()
return username_inp, pwd_inp
# 定义登录功能
def login():
print('欢迎来到登陆功能')
if username_list:
print('已经登录,请勿重复登录')
return
count = 0
while count < 3:
username_inp, pwd_inp = inp_username_pwd()
with open('user_info.txt', mode='r', encoding='utf-8')as fr:
for user_info in fr:
user_info = user_info.strip()
username, pwd = user_info.split(':')
if username == username_inp and pwd == pwd_inp:
print('login successf')
username_list.append(username_inp)
return
else:
print('login fiel')
count += 1
# 定义注册功能
def register():
print('欢迎来到注册功能')
username_inp, pwd_inp = inp_username_pwd()
with open('user_info.txt', mode='w', encoding='utf-8')as fa:
fa.write(f'{username_inp}:{pwd_inp}')
# 判断是否有用户登录
def user_check():
if not username_list:
print('请先登录后再使用该功能')
return
# 定义注销功能
def logout():
# if not username_list:
# print('请先登录后再使用该功能')
# return
user_check()
print('欢迎来到注销功能')
ask = input('注销按y/Y,返回主界面按q。是否要进行注销?')
if ask == 'q':
pass
else:
username_list.clear()
# 定义购物功能
def shopping():
print('欢迎来到祥云购物商城')
# if not username_list:
# print('请先登录后再使用该功能')
# return
user_check()
print('''
0 : 《Python全栈开发》
1 : 《Linux自动化运维》
2 : 《Go语言实战开发》
3 : 《Docker教程》
4 : 《前端开发》
5 : 《爬虫教程》
''')
prize_choice = input('请输入你需要购买的商品的编号:').strip()
prize_name = prize_dict[prize_choice]
if prize_name in shopping_car_dict:
shopping_car_dict[prize_name] += 1
else:
shopping_car_dict[prize_name] = 1
print(f'成功购买:{prize_name},当前购物车内容为:{shopping_car_dict}')
# 定义购物车功能
def shopping_car():
# if not username_list:
# print('请先登录后再使用该功能')
# return
user_check()
print('您已完成购买')
print(f'购买物品为:{shopping_car_dict}')
shopping_car_dict.clear()
# 定义功能字典
func_dict = {
'1': login,
'2': register,
'3': logout,
'4': shopping,
'5': shopping_car,
}
# 程序入口
while True:
print('''
1 登录
2 注册
3 注销
4 购物
5 查看购物车
q 退出
''')
func_choice = input('请选择你要是用的功能:').strip()
if func_choice == 'q':
break
if func_choice not in func_dict:
print('输入的指令不存在!')
continue
func_dict[func_choice]()