概述
题目来源:小破站 BV12E411A7ZQ
先按题目要求打印出商品列表
名称类型为str,价格类型为int,所以输出要转换int格式为str
这里因为每个商品的名称和价格在list的同一个框内,这里为了输出对齐,采用了格式符
'%-5s' 含义是 左对齐,且占用5字符位
products = [["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,储存用户加入购物车商品的序号
buybox = [] #建立空的购物车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这个原表中找到商品和价格
price = 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枚举帮助实现索引
products = {"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爬虫编程基础-习题:购物车列表选购,输出价格所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复