我是靠谱客的博主 帅气荔枝,最近开发中收集的这篇文章主要介绍Python爬虫编程基础-习题:购物车列表选购,输出价格,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

题目来源:小破站 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爬虫编程基础-习题:购物车列表选购,输出价格所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(44)

评论列表共有 0 条评论

立即
投稿
返回
顶部