# !/usr/bin/env python
# -*- coding:utf-8 -*-
# Author:Hugolinhj
#ps:字符编码是UTF-8,单独DOS运行需要删除字体改变代码。
#练习,定义商品清单,客户输入余额(整数),选择商品后,扣除金额。
product_list = [
('iphone',5800),
('Mac_pro',9800),
('bike',800),
('coffee',30),
('Watch',10600),
('MingYW',10000),
]
shopping=[]
#定义两个变量,product_list:商品清单。shopping:购物清单。
salary = input('Input your Salary:')
#定义变量salary,用户金额。
count = 3
#定义变量count,为计算输入多次错误字符后,退出。
while count >0:
if salary.isdigit():
#判断字符是否为整数,或字符串可否转整数。
salary = int(salary)
#转int整数类型
while True:
for item in enumerate(product_list): #依次循环商品清单
#enumerate()显示列表的下标
#上句等于 for item in product_list:
#print (product_list.index(item),item)
print(item)
user_choice = input('需要的商品>>>')
#定义变量user_choice为用户选择的序号‘下标'.
if user_choice.isdigit():
user_choice = int(user_choice)
if user_choice < len(product_list) and user_choice >=0:
#len(product_list)检查product_list的长度为6。判断,比较。
p_item = product_list[user_choice]
#定义变量p_item为所选商品。
if p_item[1] <= salary:
#比较p_item下标1的数值,与salary用户余额
shopping.append(p_item)
#添加商品入变量p_item入shopping列表中
salary -=p_item[1]
#余额减p_item下标1的数值
print('添加 %s 加入购物车,你得余额为 33[31:1m%s 33[0m'%(p_item,salary))
# 33[31:1m‘%s’ 33[0m ‘%s’改字体颜色为红色、加粗。
# 33[41:1m‘%s’ 33[0m ‘%s’改字体颜色为背景红色、加粗。
# 33[33:1m‘%s’ 33[0m ‘%s’改字体颜色为背景黄色、加粗。
else:print(" 33[31:1m你的余额不足,请重新输入!!或者输入q 33[0m")
else:print('你输入的有误!请重新输入。请按‘q’退出!')
elif user_choice == 'q':
if len(shopping) == 0:
print ('你未购买商品!谢谢光临!')
print('你的余额:%s'%(salary))
exit ()
else:
print('你购买商品如下:')
for p in shopping:
print(p)
print('你的余额:%s'%(salary))
exit()
else:
print('你输入的有误!请重新输入,')
else:break
elif salary=='q':
print('感谢你得使用!')
exit()
else:
print('你输入的有误!请重新输入或者输入"q"退出!')
print('你剩余机会还有:',count,'次')
salary=input('请重新输入>>>')
count -= 1
#巡检次数减1
else:print('感谢你得使用!')
shopping=
Are you want?
iphone = 5800
mac_pro = 12000
coffee = 30
bike = 800
for i in shopping:
print(i)
'''
内容来源于网络如有侵权请私信删除