作者:寂寞已成伤兑 | 来源:互联网 | 2023-09-18 16:04
篇首语:本文由编程笔记#小编为大家整理,主要介绍了python实现购物车程序相关的知识,希望对你有一定的参考价值。
使用python3实现的简单购物车程序
用户入口
1、第一次需要输入自己的金额,下次购买会记录上一次所剩的余额
2、用户只需要输入对应商品前面的序号即可将商品添加进购物车
3、能够记录用户购买商品的历史记录,并每次退出程序后显示总的购买情况
商家入口
1、商家需要通过账号验证进入
2、商家能够对商品进行添加以及修改商品的价格
可以自行考虑一些其余的功能添加上去
1 #!/usr/bin/env python
2 #coding:utf-8
3
4 import os
5
6 def text_save(filename, data): ##定义函数将列表存入到文件里面
7 file = open(filename,‘w‘)
8 for i in range(len(data)):
9 s = str(data[i]).replace(‘[‘,‘‘).replace(‘]‘,‘‘)
10 s = s.replace("‘",‘‘).replace(‘,‘,‘‘) +‘
‘
11 file.write(s)
12 file.close()
13
14 size = os.path.getsize(‘shopping.txt‘) #判断存商品的文件是否为空,如果为空,则使用自定义的商品初始值
15 if size == 0:
16 shopping = [[‘phone‘,2800],[‘snacks‘,200],[‘watch‘,1200],[‘cloths‘,500]]
17 else:
18 shopping = []
19 with open(‘shopping.txt‘,‘r‘) as f:
20 for data in f.readlines():
21 shopping.append(data.split(‘ ‘))
22 for data2 in range(len(shopping)):
23 shopping[data2][1] = shopping[data2][1].rstrip(‘
‘)
24 shopping[data2][1] = int(shopping[data2][1])
25
26
27 shopping_list = [] #定义用户购买的商品列表
28
29
30 with open(‘shopping_cart.txt‘,‘r‘) as f1: #打开存取用户商品的文件,并将已购买的商品读取保存到列表里
31 for j in f1.readlines():
32 shopping_list.append(j.split(‘ ‘))
33 for j2 in range(len(shopping_list)):
34 shopping_list[j2][1] = shopping_list[j2][1].rstrip(‘
‘)
35
36
37 with open(‘user.txt‘,‘r‘) as f: #需要事先在文件里面写上验证的用户,这里只定义了一个admin用户,用于区分是用户还是商家
38 userlist = f.readlines()
39 for i in range(len(userlist)):
40 userlist[i] = userlist[i].strip(‘
‘)
41
42
43 role = input(‘if or not you are admin?(y|n):‘) #简单判断是进入到用户入口还是商家入口
44
45 #用户入口
46 if role == ‘n‘:
47 size = os.path.getsize(‘salary.txt‘) #若保存工资的文件为空,则需要用户手动输入自己的余额,否则直接读取里面保存的余额
48 if size == 0:
49 mOney= input(‘please input your RMB:‘)
50 else:
51 with open(‘salary.txt‘,‘r‘) as f3:
52 mOney= f3.read()
53 flag1 = False
54 if money.isdigit():
55 mOney= int(money)
56 while not flag1:
57 for index,item in enumerate(shopping):#获取商品的列表以及对应的下标,用户选择对应的序号即可添加商品到购物车
58 print(index,item)
59 product_choice = input("你需要选择什么商品>>>")
60 if product_choice.isdigit():
61 product_choice = int(product_choice)
62 if product_choice and product_choice >=0:#判断选择购买的商品是否在列表里存在
63 product_item = shopping[product_choice]
64 if product_item[1] <= money: #判断余额是否足够
65 shopping_list.append(product_item)
66 money -= product_item[1]
67 print("add [%s] into your shopping cart and Your remaining balance is 33[31;1m%s 33[0m" %(product_item[0],money))
68 else:
69 print("