出于督促自己学习以及未来回顾和分享的目的,记录一下自己的学习过程。
B站视频号:BV12E411A7ZQ
ep8&9. 列表,课后作业为:
代码实现:
# -*- coding = utf-8 -*- # @Time : 5/11/21 2:33 pm # @Author: YS # @File : 列表练习.py # @Software: PyCharm # 打印出六件商品的列表,每一个商品的编号、品名、价格作为一行,并根据列表写出循环,不断询问客户想买什么,用户选择商品编号则把对应的商品添加到购物车,最终用户输入q退出时,打印购买的商品列表。 # 打印商品列表 products =[["iPhone", 6888], ["MacPro", 14800], ["小米6", 2499], ["Coffee", 31], ["Book", 60], ["Nike", 699]] # 商品数据 print("-"*6, "t", "商品列表", "-"*6) # 表头 index = 0 # 商品编号 for product in products: print(index, "", product[0], " "*(8-len(product[0])), product[1]) # 尽量格式按照作业要求,但是小米6的格式问题没法解决,因为中文字在len()中仅算作一个长度,可以单独微调,较为繁琐故忽略 index += 1 # 购物车 no = 1 cart = [] # 空购物车 # consumer = input("请问你需要买什么,请直接输入商品编号,或者输入q退出购买:") test = ["q", "0", "1", "2", "3", "4", "5"] # 仅六个编号或q为有效输入 while 1: consumer = input("请输入商品编号(0-5)或q退出购买:") while consumer in test: if consumer == "q": break cart.append(int(consumer)) print("输入有效!") consumer = input("请重新输入商品编号(0-5)或q退出购买:") else: print("输入无效!") if consumer == "q": break # 要求已经全部实现。用户输入任意内容均可顺利识别并继续程序。 if len(cart) > 0: for good in cart: print(no, products[good][0], products[good][1]) no += 1 else: print("什么都没买")
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)