python3简单购物车程序的实现

python3简单购物车程序的实现

1、代码部分
# Auther:bentou

salary=input("salary:")  #用户输入可供支付的预期
goods=[("iphone 11",1200),("coffee",24),("ipad",3700)] #商品列表

'''
和enumerate()方法的功能一样,打印index下标
while True:
    for item in goods:
        print(goods.index(item),item)

    break
'''

shopping_car=[] #定义一个空列表,用来装需要放到购物车的商品
while True: #循环开始了
    for index,item in enumerate(goods): #enumerate()方法的作用:打印下标
        print(index,item) #每次循环都打印一下下标和商品
    choice=input("选择要买吗:") #本意是让用户选择下标(序号),用户退出的时候显示一共多少钱,钱不够的时候显示余额不足
    if choice.isdigit() : #当用户输入的值是0-9之间的阿拉伯数字
        choice=int(choice) #强制转换成数字
        if choice<len(goods) and choice>=0: #数字在食品列表范围内
            p_item=goods[choice] #让p_item等于用户选的那个商品元素
            if p_item[1]<= int(salary): #如果买得起,也就是售价之和小于工资
                shopping_car.append(p_item) #就把这个商品加入提前定义的空列表
                salary=int(salary)-p_item[1] #工资减去这个加购商品的价格
                print("Added %s into car,your current balance is %s" %(p_item,salary)) #告诉客户加了什么到购物车以及余额是多少
            else: #工资不够了,跳出循环
                print("Not enough!")
                break
        else:#商品列表没有这个商品
            print("no such goods")
    elif choice=="q":  #退出购物车了,告诉用户加了啥和余额多少
        print("------shopping car-------")
        for i in shopping_car:
            print(i)
        print("your current balance:",salary)
        break
    else: #输入不符规则
        print("invalid")
2、结果输出
salary:3000
0 ('iphone 11', 1200)
1 ('coffee', 24)
2 ('ipad', 3700)
选择要买吗:1
Added ('coffee', 24) into car,your current balance is 2976
0 ('iphone 11', 1200)
1 ('coffee', 24)
2 ('ipad', 3700)
选择要买吗:0
Added ('iphone 11', 1200) into car,your current balance is 1776
0 ('iphone 11', 1200)
1 ('coffee', 24)
2 ('ipad', 3700)
选择要买吗:q
------shopping car-------
('coffee', 24)
('iphone 11', 1200)
your current balance: 1776

python3简单购物车程序的实现_第1张图片

本篇文章如有错的地方,欢迎在评论指正。喜欢在微信看技术文章,可以微信搜索「胡录乱影」,回复【Python】【前端基础】【vue开发】即可获得视频资源,回复【答辩PPT】【演讲PPT】即可获得超级实用PPT模板,还有更多资料,建议后台留言或者直接私信我。

另,如果觉得这本篇文章写得不错,有点东西的话,各位人才记得来个三连【点赞+关注+分享】。

你可能感兴趣的:(Python)