goods = [
{"名字": "联想电脑", "价格": 3999},
{"名字": "手机", "价格": 210},
{"名字": "硬盘", "价格": 520},
{"名字": " 美女", "价格": 998},
]
exit_flag = False # 设立标识符
user = "andyzhang" # 定义用户名
password = 123 # 定义密码
usr = input("请输入用户名:").strip()
pwd = input("请输入密码:").strip()
count=0
while usr == user and pwd ==password and count > 0 :
if usr == user and pwd == password:
salary_input = int(input("请输入你的工资:").strip())
count += 1
for k, i in enumerate(goods):
print('%s. %s %s' % (k, i["名字"], i["价格"]))
else:
print('用户名或密码错误,请重新输入') # 定义一个购物车为
cart = []
'''
用户输入有2种情况:
1.用户输入数字:如果输入的数字是商品编码,则把相应的商品添加到购物车; 如果输入的数字不是商品编码,则提示“商品编码错误”信息;
2.输入字母“q”则退出。
'''
while not exit_flag: # 循环,让用户可以持续添加商品编码
product_choice = input('请输入您要购买的商品编号:')
# 第1中情况:用户输入的是数字
if product_choice.isdigit():
choice = int(product_choice)
# 输入数字在商品编码范围之内
if choice >= 0 and choice < len(goods):
'''
输入正确的商品编码后,去判断工资余额是否足够买这个商品,
余额足够就把所选的商品添加到购物车cart列表中,并从余额中扣除相应的价格,打印“商品已添加到购物车”和所剩余额信息。
'''
if salary_input >= goods[choice]['价格']:
cart.append(goods[choice])
print('商品:%s 已被添加到购物车' % (goods[choice]['名字']))
salary_input -= goods[choice]['价格']
# 余额不足以购买所选购的商品
else:
print('余额不足!')
# 输入数字不在商品编码之内,打印“商品编码错误”信息
else:
print('商品不存在!') # 用户输入的是字母“q”
# elif:
# product_choice == 'q':
exit_flag = True
if len(cart) > 0: # 购物车不为空时打印商品清单
print('---------您已购买的商品清单---------')
# 循环打印购物车列表cart中的信息
for index, i in enumerate(cart):
print('%s. %s price:%s' % (index, i['名字'], i['价格']))
print('账户余额', salary_input) # 打印余额信息。
# 用户名、密码错误,打印“用户名密码错误”并重新输入