题目来源:小破站 BV12E411A7ZQ
先按题目要求打印出商品列表
名称类型为str,价格类型为int,所以输出要转换int格式为str
这里因为每个商品的名称和价格在list的同一个框内,这里为了输出对齐,采用了格式符
'%-5s' 含义是 左对齐,且占用5字符位
复制代码
1
2
3
4
5
6
7products = [["iphone",6888],["MacPro",14800],["Mi",2499],["Coffee",31],["Book",60],["Nike",699]] print("-"*10+"商品列表"+"-"*10) i=0 for item in products: print('%-5s%-15s%-15s' %(str(i),products[i][0],str(products[i][1]))) i += 1
输出效果:
建立list,储存用户加入购物车商品的序号
复制代码
1
2
3
4
5
6
7
8
9
10
11
12buybox = [] #建立空的购物车list j=0 while(True): tempbox = input("请输入想要购买产品的编号(q为结算):") if(tempbox == "q"): break if 0<= int(tempbox) <=5: buybox.append(tempbox) else: print("您输入的商品编号有误,请重新输入(q为结算)") continue
运行效果:
用buybox里的序号,对应找到在products这个原表中找到商品和价格
复制代码
1
2
3
4
5
6
7
8
9
10
11price = 0 goods = [] for j in buybox: price = price + products[int(j)][1] goods += [products[int(j)][0]] print("您所选购的商品为:",end="") for p in goods: print(p,"t",end="") print("n您所选购的商品总价为%d元"%price)
这里调用products这个list,因为储存用户输入的序号,序号的字符类型为str,而这里需要用int作为序号调用products,所以需要转换类型
新学习了dirt类型,发现用这个类型实现打印比较方便,但是因为字典dirt是无序的,不方便用索引调用,所以还是用list实现购物车结算效果更好~
这里给出dirt实现打印的方式,用enumerate枚举帮助实现索引
复制代码
1
2
3
4
5
6products = {"iphone":6888,"MacPro":14800,"Mi":2499,"Coffee":31,"Book":60,"Nike":699} print("-"*10+"商品列表"+"-"*10) for i,x in enumerate(products.keys()): print('%-5s%-15s%-15s' %(i,x,products[x]))
打印效果
不同变量类型是否有序,是否可变:
最后
以上就是帅气荔枝最近收集整理的关于Python爬虫编程基础-习题:购物车列表选购,输出价格的全部内容,更多相关Python爬虫编程基础-习题:购物车列表选购内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复