# # -*- coding: utf8 -*-
# # Author:wxq
# # date:2017/11/13
# # python 3.6
# 创建一个商品列表:
product_lis = [
    ('Mac', 9000),
    ('Kindle', 800),
    ('tesla', 900000),
    ('Python book', 80),
    ('bike', 4000),
]
saving = input('请输入你口袋中的钱: ')
shopping_car = []#定义一个购物空列表,将存放购买的物品列表
# 因为saving的值是一个字符串,所以要进行判断,输入的必须是数字
if saving.isdigit():
    saving = int(saving)
    while True:
        for i,v in enumerate(product_lis,1):#enumerate:枚举,将列表中的信息打印出来,后面的参数enumerate(product_lis,1)  ’1‘的意思是从1开始默认是0
            print(i,'>>>>>',v)
        choice = input("请选择你要购买商品的编号: [退出请按: q]: ")
        #判断用户输入的是否合法,输入的必须是整数才行
        if choice.isdigit():
            choice = int(choice) #请用户输入商品编号
            if choice > 0 and choice <= len(product_lis):
                p_item = product_lis[choice-1]#程序默认的索引是以0开始,所以-1才是我们看到的商品编号
                if p_item[1] < saving:
                    saving -= p_item[1] #输入的钱需要减去购买商品的价格
                    shopping_car.append(p_item)#将购买的商品追加到商品购物列表中
                else:
                    print('余额不足,还剩下%s :'%saving)
                print(p_item)
            else:
                print("编码不存在")
        elif choice =='q':
            print("---------你购买的商品如下:------------")
            for i in  shopping_car:
                print(i)
            print("你还剩下 %s 元钱"%saving)
            break
        else:
            print("你输入的编码无效,请重新输入:")

这只是一个小案例,通过学习列表,元组等的基础知识完成购物车功能。