标签:rod data 购物车 exe 选择 list == 代码 put
购物车代码,一步一步进行(编写代码的过程,就是一个一步一步递进式的思考)
如下:
第一步,实现与用户交互以及答应可购物的清单
对于上一步有一个缺点就是打印出俩的购物清单是一个元祖,用户看起来并不方便,而且没有编号,首先我们实现如何让用户看起来好看
1 product_list=[ 2 (‘book‘,100), 3 (‘Mac Pro‘,9000), 4 (‘watch‘,500), 5 (‘coffee‘,30), 6 (‘Python‘,106),] 7 saving=input(‘input your money:‘) 8 if saving.isdigit(): 9 saving=int(saving) 10 for i in product_list: 11 print(i)
输出结果:
C:\Users\lenovo\PycharmProjects\fullstack\venv\Scripts\python.exe C:/Users/lenovo/PycharmProjects/fullstack/week1/day6/shopping.py
input your money:123
(‘book‘, 100)
(‘Mac Pro‘, 9000)
(‘watch‘, 500)
(‘coffee‘, 30)
(‘Python‘, 106)
Process finished with exit code 0
然后我们进行编号:
方法一:
方法二:
对于上面给用户呈现出来的是一个原则的形式,但是并不好看,我们不想让它以元祖的形式出现,那么:
知识点:
列表:
a,b=[2,3]
print(a)
print(b)
2
3
元祖;一样的道理
思路清理,进行一个简短的代码思路清理,然后对其补充修改
通过输出我们可以得知p_item是一个元祖(‘mac pro‘, 9000) 它的价位在第二个位置,对于元祖来说就是1
所以:
然后建立一个空列表,充当购物车,买了什么东西放到空列表里面:
对q进行修饰
完整的代码:
1 #_author:"Xia liu" 2 #data:2020/2/11 3 product_list=[(‘book‘,100),(‘Mac Pro‘,9000),(‘watch‘,500),(‘coffee‘,30),(‘Python‘,106)] 4 saving=input(‘input your money:‘) 5 shopping_car=[] 6 if saving.isdigit(): 7 saving=int(saving) 8 while True: 9 for i,v in enumerate (product_list,1): 10 print(i,v) 11 choice = input(‘选择购买商品编号[退出:q]:‘) 12 if choice.isdigit(): 13 choice = int(choice) 14 if choice > 0 and choice < len(product_list): 15 p_item = product_list[choice-1] 16 if p_item[1] < saving: 17 saving -= p_item[1] 18 shopping_car.append(p_item) 19 20 else: 21 print(‘余额不足,还剩%s‘%saving) 22 print(p_item) 23 else: 24 print(‘编码不存在‘) 25 elif choice=="q": 26 print(‘---------您已经购买如下商品-----------‘) #如果想退出 27 for i in shopping_car: 28 print(i) 29 print(‘您的余额为%s元‘ % saving) 30 break 31 else: 32 print("invalid input") 33 else: 34 print(‘编码不存在‘)
标签:rod data 购物车 exe 选择 list == 代码 put
原文地址:https://www.cnblogs.com/Crystal0717/p/12294781.html