python入门之实例-商品选择
需求:
显示一系列商品,根据序号选择商品
li = ["手机","电脑","电视"] #函数enumerate在for循环遍历的时候,会默认自动生成一个以0开始递增的索引排序,后面接数字1就从1开始,这样输出就像字典,之后使用比较方便 for key,i in enumerate(li,1): print(key,i) inp = input("请输入商品:") #input接受的输入全是字符串,即使输入数字1,那也是字符串"1" inp_num = int(inp) #这里输入来取值,并非是根据上面enumerate函数生成的序号来取,而是根据li列表的索引来取值,下面inp_num减1,那么得到的序号就和索引值一样了 print(li[inp_num-1])
另外补充:
range和xrange的区别:
range(1,10)用来获取1到9的数字,在py3中,直接print不会输出,必须在for循环里才会创建,一次循环创建一个,而在py2里可以直接全部print出来,而py2.7的xrange也只能在for循环里创建输出,但是py3里没有xrange
range函数里再加第三个参数,那就是步长,默认为1,就是依次增加1,range(1,10)等同于range(1,10,1),从1开始,每次增加1;如果想要10到1倒着排序输出,就该range(10,0,-1),每次增加-1,也就是依次减1
for i in range(0,len(a))获取列表a所有的索引值,建议len别写在for里面,这样会使代码重复执行。