一 购物车作业
函数一完成3次登录功能
实现新用户注册功能
购物功能
将购物功能拆分多个函数
items_information = [
{'name': '苹果', 'price': 10},
{'name': '香蕉', 'price': 5},
{'name': '西瓜', 'price': 30}
]
shopping_car = {}
user_wallent = {'ddr': 100, 'ddr2': 200}
user_dic = {'ddr': '123', 'ddr2': '1234'}
global username
def register_func():
# global username
while 1:
username = input("请输入你注册的用户名:")
if username in user_dic.keys():
print("您输入的用户名已注册,请重新输入")
else:
passwd = input("请输入你注册的密码:")
user_dic.setdefault(username, passwd)
user_wallent.setdefault(username, 0)
print("恭喜您,注册成功")
msg = """----------------info of %s----------------
用户名:%s
密 码:%s""" % (username, username, passwd)
print(msg)
print("您的钱包还未充值默认金额为0,要充值吗,Yes or No")
answer = input("")
if answer == 'Yes':
paycheck()
return
def paycheck():
check_info_dic = {}
# global username
while 1:
username = input("核对用户名:")
if username in user_dic.keys():
print("您的账户余额为%s" %user_wallent[username])
lastmoney = int(user_wallent[username])
flag1 = True
while flag1:
check_info_passwd = input("核对密码:")
if check_info_passwd == str(user_dic[username]):
flag1 = False
flag2 = True
while flag2:
money = input("请输入您的充值金额:")
if money.isdigit():
# flag1 = False
user_wallent[username] = lastmoney + int(money)
print()
print("充值成功,您的充值金额为%d,余额为%d" % (int(money), user_wallent[username]))
print("用户%s欢迎光临鲜丰水果店" % username)
meniu(username)
return 1
else:
print("您输入的金额有误,请重新输入")
else:
print("您输入密码有误,请重新输入")
else:
print("您输入用户名有误,请重新输入")
def is_login():
# global username
i = 3
flag = True
while flag:
username = input("请输入你的用户名:")
if username in user_dic.keys():
while i > 0:
i -= 1
password = input("请输入你的密码:")
if password == str(user_dic[username]):
print("您的账户余额为%s" % user_wallent[username])
print("用户%s欢迎光临鲜丰水果店" % username)
meniu(username)
return 1
else:
print("您输入的密码有误,请重新输入,您还有次%d机会" % i)
if i == 0:
print("您登录次数用完")
return 0
else:
print("您还不是本店会员,如需够买本店商品请先注册:")
register_func()
return 1
def meniu(a):
while 1:
for i, k in enumerate(items_information):
print("序号{}, 商品{},价格{}".format(i, k['name'], k['price']))
choose = input("请输入商品序号:")
if choose.isdigit() and int(choose) < len(items_information):
num = input("请输入购买该商品数量:")
if num.isdigit():
if int(user_wallent[a]) >= int(num) * items_information[int(choose)]['price']:
user_wallent[a] = int(user_wallent[a]) - int(num) * items_information[int(choose)]['price']
if items_information[int(choose)]['name'] in shopping_car:
shopping_car[items_information[int(choose)]['name']] = shopping_car[items_information[int(choose)]['name']] + int(num)
else:
shopping_car[items_information[int(choose)]['name']] = int(num)
print("已将商品{}放入您的购物车,所剩余额为{}".format(shopping_car, user_wallent[a]))
else:
print("你的付款金额不足,请充值")
paycheck()
break
else:
print("您输入序号不再商品范围内")
#购物车程序开始
is_login()