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