# 余额
Money = 10000
# 购物车列表
shopping_cart =
[]
# 商品列表,可以用list代替,用dict是为了练习
commodity =
{
'男装': 318
,
'女装': 218
,
'内衣': 118
,
'鞋': 98
,
'箱包': 546
,
'配件': 342
,
'童装玩具': 32
,
'孕产': 998
,
'数码': 4999
,
}
# 显示商品列表
def print_commodity():
p_count =
0
print(
'商品列表')
for i
in commodity:
p_count += 1
print(
' %d:%s 价格:%d' %
(p_count, i, commodity[i]))
# 显示购物车列表
def print_shopping_cart():
p_count =
0
print(
'购物车 总价:%d 余额:%d' %
(sel_price(), Money))
for i
in shopping_cart:
p_count += 1
print(
' %d:%s 价格:%d' % (p_count, i[0], i[1
]))
# 删除购物车商品
def del_shopping_cart():
while True:
print_shopping_cart()
select = input(
'输入要删除的商品序号(b=返回上一级,q=退出):')
if select ==
'b':
break
elif select ==
'q':
# 退出
print(
'退出购物')
elif select.isdigit()
and int(select) > 0
and int(select) <=
len(shopping_cart):
shopping_cart.pop(int(select) - 1
)
else:
print(
'输入错误,不存在 %s 商品' %
select)
# 计算总价
def sel_price():
price =
0
for i
in shopping_cart:
price += i[1
]
return price
print_commodity()
while True:
select =
input(
"选择1~9加入购物车(b=结算,q=退出,s=购物车列表,v=商品列表,d=删除购物车商品 余额:%d):" %
Money)
if select ==
'v':
# 显示商品列表
print_commodity()
elif select ==
's':
# 显示购物车列表
print_shopping_cart()
elif select ==
'q':
# 退出
print(
'\n' * 5,
'退出购物'.center(50,
'-'))
break
elif select ==
'd':
# 删除购物车商品
del_shopping_cart()
elif select ==
'b':
# 结算
if len(shopping_cart) > 0:
# 判断购物车有无商品
price =
sel_price()
if (Money - price) > 0:
# 判断余额是否充足
Money -=
price
print(
'共购买 %d 件商品,总价:%d ,剩余金额 %d' %
(len(shopping_cart), price, Money))
shopping_cart.clear() # 清空购物车
else:
print(
'余额不足,无法完成当前购买 剩余余额:%d 商品总价:%d' %
(Money, price))
print(
'1:删除购物车所有商品\n2:删除一些商品')
while True:
select = input(
'输入选择(b=返回上一级,q=退出):')
if select ==
'b':
# f
break
elif select ==
'q':
# 退出
print(
'退出购物')
elif select ==
'1':
# 删除所有
shopping_cart.clear()
break
elif select ==
'2':
# 删除指定商品
del_shopping_cart()
break
else:
print(
'输入错误,不存在 %s 指令' %
select)
else:
print(
'未选择商品,请购买商品后结算')
elif select.isdigit()
and int(select) > 0
and int(select) <=
len(commodity):
# 获取键(购物列表用list的话,可以commodity[int(select)-1][0]或[1]取出商品名称和价格
itemkey = list(commodity.keys())[int(select) - 1
]
# 加入购物车
shopping_cart.append([itemkey, commodity[itemkey]])
print(
"%s 加入购物车 已加入%d件商品" %
(itemkey, len(shopping_cart)))
else:
print(
'输入错误,不存在 %s 指令' %
select)
exit()
转载于:https://www.cnblogs.com/xh4528/p/6498596.html
相关资源:原生js模拟淘宝购物车项目实战