下面是我们这个程序的框架:
下面说一些代码中比较难理解的代码
下面这个自己领会就好啦,本人不多做介绍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是不会出错的,不过会
#少了一个值,你试试
#因为你刚刚花了钱买了商品,所以你现在的工资应该要减去商品的价格
#询问用户是否要继续
#如果工资不够我们买东西的话,就输出以下信息
#询问用户是否要继续