本文实例为大家分享了python实现购物车功能的具体代码,供大家参考,具体内容如下
功能要求:
要求用户输入总资产,例如:2000
显示商品列表,让用户根据序号选择商品,加入购物车
购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功。
附加:可充值、某商品移除购物车
代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
|
#!/usr/bin/env python # -*- coding:utf-8 -*- shopping_list = [ ( "Iphone" , 5000 ), ( "Delicious food" , 48 ), ( "Mac book" , 9800 ), ( "Huawei" , 4800 ), ( "Alex python" , 32 ), ( "coffee" , 24 ) ] shopping_cart = [] salary = raw_input ( 'please input salary: ' ) if not salary.isdigit(): print "salary must be digit,run again" exit() else : salary = int (salary) while True : print "------products list is--------" for index, item in enumerate (shopping_list): print "\033[32m%s, %s\033[0m" % (index, item) choice = raw_input ( 'please input choice[q(uit)]>>> ' ) if choice.isdigit(): choice = int (choice) if choice < len (shopping_list) and choice > = 0 : product = shopping_list[choice] if salary > product[ 1 ]: confirm = raw_input ( 'do you want to buy now[y/n]: ' ) if confirm = = 'y' : shopping_cart.append(product) salary - = product[ 1 ] print "you bought %s,price is %d, your balance is %d" % (product[ 0 ], product[ 1 ], salary) else : print 'select again' else : add_confirm = raw_input ( "your balance is: %d, not enough, do you want to add more?[y/n]" % salary) if add_confirm = = 'y' : add_salary = raw_input ( 'add the money: ' ) if add_salary.isdigit(): add_salary = int (add_salary) salary + = add_salary print "now balance is %d: " % salary else : print "the money must be digit." else : print "------shopping cart list---------: " for index, item in enumerate (shopping_cart): print index, item else : print "choice must be 0~5." elif choice = = 'q' : remove_product = raw_input ( "do you want remove product or exits now [y/n] " ) if remove_product = = "y" : print "-----------your shopping cart lists-------------: " for index, item in enumerate (shopping_cart): print index, item remove_choice = raw_input ( 'please input your remove choice>>> ' ) if remove_choice.isdigit() and int (remove_choice) < len (shopping_cart) and int (remove_choice) > = 0 : salary + = shopping_cart[ int (remove_choice)][ 1 ] del shopping_cart[ int (remove_choice)] print "-----------new shopping cart lists-------------: " for index, item in enumerate (shopping_cart): print index, item print "your balance is %d" % salary else : print "input error, again" else : print "exit now" exit() else : print "-----------shopping cart lists-------------: " for index, item in enumerate (shopping_cart): print index, item print "\033[31mchoice must be digit,exit\033[0m" |
功能挺简单,就是涉及到列表的增加和删除,还有一些逻辑的判断处理。
运行结果如下:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/linxi7/article/details/70582273