首页 > 代码库 > 购物车
购物车
流程图:
#! /usr/bin/env python
# -*- coding:utf-8 -*-
import json
import os
user_name = "lifei"
user_passwd = "123"
user_account = 0
shop_car = []
jiesuan_list = []
flag = False
N = 0
while flag is not True:
user = input("Input your username:").strip()
if N > 2: # 输错三次强制退出
exit("login disabled")
passwd = input("Input your password:").strip()
if passwd == user_passwd and user == user_name:
print("welcome %s login." % user)
flag = True
else:
print("Invalid username or password!")
N += 1
data_list = [
"1.购物历史",
"2.充值",
"3.购物",
"4.结算中心",
]
product_list = [
(‘iphone‘, 4800),
(‘mac_book‘, 8888),
(‘coffee‘, 30),
(‘tesla‘, 820000),
(‘bike‘, 800),
]
exit_flag = False
while not exit_flag:
print(data_list)
choice = input("[quit] or make your choice:").strip()
if choice == "1":
if os.path.exists(‘data.json‘):
# print("shop_infomation".center(50, ‘*‘))
# f = open("data.json", "r")
# shop_history = f.read()
# print(shop_history)
# f.close()
with open("data.json", "r", encoding="UTF-8") as f_load:
r_load = json.load(f_load)
print(r_load[user])
print("end".center(50, ‘*‘))
else:
print("no shop history.")
elif choice == "2":
money_chongzhi = int(input("input your money:").strip())
user_account += money_chongzhi
print("now your account:%s." % user_account)
elif choice == "3":
print("product list".center(50, ‘-‘))
for item in enumerate(product_list):
index = item[0]
p_name = item[1][0]
p_price = item[1][1]
print(index, ‘.‘, p_name, p_price)
exit_flag1 = False
while not exit_flag1:
user_choice = input("[quit],what do you want to buy?:").strip()
if user_choice.isdigit():
nums = int(input("how many do you want to buy?:").strip())
user_choice = int(user_choice)
if user_choice <= len(product_list):
p_item = product_list[user_choice]
one_price = nums*p_item[1]
# print(one_price)
if one_price <= int(user_account):
for n2 in range(0,nums):
shop_car.append(p_item)
# print("目前购物车中已添加的商品:%s" % shop_car)
else:
print("your account can not afford.")
else:
if user_choice == ‘q‘ or user_choice == ‘quit‘:
print("shopcar products as below".center(40, ‘*‘))
for item in shop_car:
print(item)
exit_flag1 = True
print("end".center(40, ‘*‘))
elif choice == "4":
for item in shop_car:
print(item)
summary = 0
n = len(shop_car)
for n1 in range(0, n):
summary += shop_car[n1][1]
print("总消费金额:%s" % summary)
if summary <= int(user_account):
user_account = int(user_account) - summary
print("还剩余金额:%s." % user_account)
jiesuan_list.extend(shop_car)
# print(jiesuan_list)
dic = {
"lifei": jiesuan_list
}
print(dic)
with open("data.json", "w", encoding="UTF-8") as f_dump:
s_dump = json.dump(dic, f_dump, ensure_ascii=False)
else:
print("余额不足")
elif choice == "q" or choice == "quit":
print("purchase products as below".center(40, ‘*‘))
for item in jiesuan_list:
print(item)
exit_flag = True
else:
print("\033[1;31;40minvalidtype\033[0m")
购物车