1. 购物车程序
#购物车:用户输入已有金额,返回商品列表;选择购买商品,余额足够则购买成功,返回可用余额,继续购物,
# 否则提示余额不足,重新选择商品;购物结束后返回已购商品和余额
money = int(input("你有多少钱?"))
merchandise_list = {"BB虫草粉底液":620,"搪瓷隔离":240,"小棕瓶精华液":480,"流金水":320,"自律循环乳":400}
a = "商品列表"
b = "已加入购物车"
c = "购物车"
buy = []
while True:
choose = input("你想干嘛?1:购物 2:查看购物车 3:退出")
if choose == "1":
print(a.center(50,'-'))
for i in merchandise_list:
print(i,merchandise_list[i])
want = input("你想买啥?")
if merchandise_list[want] <= money:
print(b.center(50,'-'))
buy.append(want)
info = "当前余额: {_yue}".format(_yue = money - merchandise_list[want]) #python3中不支持%占位符
print(info)
money -= merchandise_list[want]
else:
print("余额不足!")
elif choose == "2":
print(c.center(50,'-'))
for i in buy:
print(i)
else:
break
Tips:python3中没有不支持%占位符...是字符串和%变量名之间没有逗号!
2. 三级菜单1.0
#三级菜单,省市县,可返回上一级,可随时退出程序
a = {
"陕西省":{
"西安市":["未央区","灞桥区","长安区","雁塔区"],
"渭南市":["华县","潼关","大荔","白水"],
"宝鸡市":["岐山","凤翔","扶风","眉县"]
},
"四川省":{
"成都市":["锦江区","青羊区","金牛区","武侯区"],
"自贡市":["自流井区","贡井区","大安区","沿滩区"],
"泸州市":["江阳区","纳溪区","泸县","合江"]
},
"河南省":{
"洛阳市":["老城区","西工区","吉利区","郊区"],
"开封市":["龙亭区","鼓楼区","南关区","兰考县"],
"郑州市":["中原区","二七区","金水区","上街区"]
},
"青海省":{
"西宁市":["城东区","城西区","城北区","城中区"],
"海东":["平安","乐都","湟中","湟源"],
"玉树":["玉树","杂多","称多","治多"]
},
"辽宁省":{
"沈阳市":["和平区","沈河区","大东区","皇姑区"],
"大连市":["中山区","西岗区","瓦房店","旅顺口"],
"铁岭市":["银州区","清河区","西丰","开原"]
}
}
info1 = "省级菜单如下"
info2 = "市级菜单如下"
info3 = "县级菜单如下"
while True:
choose = input("请输入目录:1省2市3县,其他键退出")
if choose == "1":
print(info1.center(50, '-'))
for i in a:
print(i)
quest = input("是否进入下级菜单?1是,其他键否")
if quest == "1":
print(info2.center(50, '-'))
for i in a:
for j in a[i]:
print(j)
else:
continue
elif choose == "2":
print(info2.center(50, '-'))
for i in a:
for j in a[i]:
print(j)
quest = input("返回上级菜单或进入下级菜单?1返回上级,2进入下级,其他键退出")
if quest == "1":
print(info1.center(50, '-'))
for i in a:
print(i)
elif quest == "2":
pass
else:
continue
elif choose == "3":
print(info3.center(50, '-'))
for i in a:
for j in a[i]:
print(a[i][j])
quest = input("是否返回上级菜单?1是,其他键否")
if quest == "1":
print(info2.center(50, '-'))
for i in a:
for j in a[i]:
print(j)
else:
continue
else:
break
3. 三级菜单2.0
a = {
"陕西省":{
"西安市":["未央区","灞桥区","长安区","雁塔区"],
"渭南市":["华县","潼关","大荔","白水"],
"宝鸡市":["岐山","凤翔","扶风","眉县"]
},
"四川省":{
"成都市":["锦江区","青羊区","金牛区","武侯区"],
"自贡市":["自流井区","贡井区","大安区","沿滩区"],
"泸州市":["江阳区","纳溪区","泸县","合江"]
},
"河南省":{
"洛阳市":["老城区","西工区","吉利区","郊区"],
"开封市":["龙亭区","鼓楼区","南关区","兰考县"],
"郑州市":["中原区","二七区","金水区","上街区"]
},
"青海省":{
"西宁市":["城东区","城西区","城北区","城中区"],
"海东":["平安","乐都","湟中","湟源"],
"玉树":["玉树","杂多","称多","治多"]
},
"辽宁省":{
"沈阳市":["和平区","沈河区","大东区","皇姑区"],
"大连市":["中山区","西岗区","瓦房店","旅顺口"],
"铁岭市":["银州区","清河区","西丰","开原"]
}
}
back_flag = False
quit_flag = False
while not quit_flag or back_flag:
#进入第一级
for i in a:
print(i)
choice = input("退出菜单(q) or 输入省份进入下一级:")
if choice == "q":
quit_flag = True
break
elif choice in a:
#进入第二级
while not quit_flag or back_flag:
for j in a[choice]:
print(j)
choice2 = input("请选择返回上级(b)or 退出菜单(q) or 输入城市进入下级:")
if choice2 == "b":
back_flag = True
break
elif choice2 == "q":
quit_flag = True
continue
elif choice2 in a[choice]:
#进入第三级
while not quit_flag or back_flag:
for k in a[choice][choice2]:
print(k)
choice3 = input("已到达最后一级,请选择返回上级(b)or 退出菜单(q)")
if choice3 == "b":
back_flag = True
break
elif choice3 == "q":
quit_flag = True
continue
else:
print("输入错误!")
else:
print("输入错误!")
else:
print("输入错误!")