下面是我们这个程序的框架:

image

下面说一些代码中比较难理解的代码

下面这个自己领会就好啦,本人不多做介绍

a = []
if not a:
   print("a列表为空的")
else:
   print("a列表不为空")
下面主要介绍一下index这个函数,index在英语中是索引的意思,在这里也一样,它是用来看看某个值在列表中的索引是多少,如下:
a = ['zhouyu','zhouziqi','laisihai']
print(a.index('laisihai'))

上面的输出信息为2,因为列表的第一个索引是从0开始的

a = ['zhouyu','zhouziqi','laisihai']
print(a[-1])

其中a[-1]是获取a列表中最后一个值。

如果我们想知道一个列表里面最后的那个值的索引是多少,可以通过以下方法

a = ['zhouyu','zhouziqi','laisihai']
print(a.index(a[-1]))

运行出来的结果也是2

下面我们介绍一下range的用法,range在英语中是范围的意思,如我们想打印出0-9出来的话,我们可以通过下面命令

for i in range(0,10):
   print(i)

细心的同学会发现,我们是想打印出0-9的,为什么我们要输成range(0,10)呢,这是因为range在程序中被设定不会输出最后一个值的,所以这个要注意一下。

那么如果我们想打印出一个列表中所有的值,可是不知道这个列表有多少值,那怎么办呢,可以用以下命令:

a = ['zhouziqi','zhouyu','zhouziyu']
for i in range(0,a.index(a[-1])):
   print(a[i])

当你执行完你就会发现它只打印出zhouziqi和zhouyu,没有打印出zhouziyu来。这是因为我们刚刚说了,range默认被设定为不输出最后一个值来的,那怎么办呢,其实我们可以加1的,这样就把问题解决了。

a = ['zhouziqi','zhouyu','zhouziyu']
for i in range(0,a.index(a[-1])+1):
   print(a[i])
那么学习完上面的知识之后,下面可以看看我写的代码

#author:zhouyu
#声明一个商品的列表commodity

#让用户输入自己的工资salary

#声明用户购物车的列表shopping_cart,为空的

#输出商品的信息



#让用户想要购买的编号
    
#判断工资是否大于我们要购买的商品
    
#当工资大于商品时,余额balance就会等于工资减去商品的价格
        
#在购物车的列表中添加我们商品的名称
        
#打印信息
        
#shopping_cart[-1]是获取到购物列表中最后一项的值,shopping_cart.index()获取括号里面shopping_cart值的索引
#这样一来就是range(0,shopping_cart最后的一个数的索引),不过这里的索引一定要加1,不加1是不会出错的,不过会
#少了一个值,你试试
        
            
        
#因为你刚刚花了钱买了商品,所以你现在的工资应该要减去商品的价格
        
#询问用户是否要继续
        
#如果工资不够我们买东西的话,就输出以下信息
        
#询问用户是否要继续