python小程序——购物

时间:2023-03-08 22:15:31
python小程序——购物

流程图

python小程序——购物

 实现方式

#!/usr/bin/python3

__author__ = 'beimenchuixue'
__blog__ = 'http://www.cnblogs.com/2bjiujiu/' def shopping_car(shopping_message):
shopping_list = [] # 定义购物车
ex = 'q' # 推出指令
while True: # 一直检查用户输入是否合法,不合法让其重新输入
try:
saving = int(input('小伙子,请输入你的工资:'))
except Exception as e:
print(e)
print('小伙子,别乱,乱来啊,我紧告你')
continue
else:
break
if saving <= 0: # 判断是否有工资
exit('没钱来干啥啊')
else:
print('按q退出选购') # 打印退出提示
while True:
for i in shopping_message: # 打印商品
print(shopping_message.index(i), i) choice = input('请输入想选择商品的编号:') if choice == ex: # 退出判断
break
else:
try: # 判断用户选择的商品是否在商品中
choice = int(choice)
shopping_message[choice]
except Exception as e:
print(e)
print('小伙子,这么年轻眼力就不行了?在输入一次:')
continue
else:
if shopping_message[choice][1] < saving: # 判断用户工资是否大于商品
print(shopping_message[choice]) # 打印选择成功的商品 shopping_list.append(shopping_message[choice][0]) # 吧商品加入购物车 saving -= shopping_message[choice][1] # 结算余额
print('余额', saving)
else:
print('小伙子你工资少了点了,买点便宜点的吧')
for i in shopping_list: # 退出时候打印购买商品
print(i)
print('余额', saving) # 打印余额 if __name__ == '__main__':
# 初始化商品列表
shopping_message = [['iphone', 5800], ['mx6', 2000], ['pythonbook', 80], ['surface', 12000], ['coffee', 33]]
shopping_car(shopping_message)

总结点:

  1. 流程图可以帮我更快的弄清编程逻辑先后顺序
  2. 考虑商品列表是动态,可以增加或者删减
3. 考虑用户输入的合法性
4. 考虑用户输入是否重复输入
  5. 记录用户选择的商品并提示还剩余额
  6. 用户退出,打印用户选择好的商品信息与余额