实现购物车功能 --- 文件操作版
Posted petrolero
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了实现购物车功能 --- 文件操作版相关的知识,希望对你有一定的参考价值。
1.用户接口
>>>判断用户工资是否有记录
>>>能够从文件中读取商品列表
>>>能够选择想要的商品,并扣除工资
>>>打印并保存订单信息以及工资余额
2.商家接口
>>>能够读取商品列表
>>>能够修改商品价格并保存
>>>能够添加商品并保存
>>>能够删除商品并保存
3.代码实现
shopping_cart.py
‘‘‘实现购物城功能---文件操作版‘‘‘
# 接口 cart_user 和 cart_merchant
role = input(‘请输入你要进入的角色接口(user/merchant)‘)
if role == ‘user‘:
from day2 import cart_user
elif role == ‘merchant‘:
from day2 import cart_merchant
else:
print("你输入的角色接口有误!")
cart_user.py
‘‘‘实现购物车功能 --- 用户接口‘‘‘
# 获得商品列表
def get_product():
product_list = []
with open(‘product.txt‘, ‘r‘) as f:
for i in f.readlines():
i = i.replace(‘\n‘, ‘‘)
product_list.append(i.split(‘:‘))
return product_list
# 保存商品列单及余额
def save_product(goods_order_salary):
with open(‘shopping.txt‘, ‘a‘) as f:
f.write(goods_order_salary + ‘\n‘)
# 读取工资
def read_salary():
with open(‘shopping.txt‘, ‘r‘) as f:
data = f.read()
return data
# 判断 salary 是否有记录
data = read_salary()
if ‘balance‘ in data:
salary = data.split(‘:‘)[-1]
print(‘您目前的余额为:‘+salary)
else:
salary = input("请输入你的工资:")
# 主程序
shopping_list = []
# if salary.isdigit():
salary = int(salary)
while True:
product_list = get_product()
for index, item in enumerate(product_list):
print(index, item)
user_choice = input(‘选择你想要的产品:‘)
if user_choice.isdigit():
user_choice = int(user_choice)
if user_choice < len(product_list) and user_choice >= 0:
p_item = product_list[user_choice]
p_item[1] = int(p_item[1])
if p_item[1] <= salary:
shopping_list.append(p_item)
salary -= p_item[1]
print(‘Added %s into shopping cart.your present balance is \033[31;1m%s\033[0m‘ % (p_item, salary))
save_product(str(p_item))
else:
print(‘\033[41;1m你的余额只剩[%s]啦,还买个毛线\033[0m‘ % salary)
else:
print(‘product code [%s] is not exist!‘ % user_choice)
elif user_choice == ‘q‘:
print(‘--------shopping list-----------‘)
for p in shopping_list:
print(p)
print(‘Your current balance:‘, salary)
save_product(‘\nyour present balance is :‘ + str(salary) + ‘\n‘)
exit()
else:
print(‘invalid option‘)
cart_merchant.py
‘‘‘实现购物车功能 --- 商家接口‘‘‘
# 获得商品列表
def get_product():
product_list = []
with open(‘product.txt‘, ‘r‘) as f:
for i in f.readlines():
i = i.replace(‘\n‘, ‘‘)
product_list.append(i.split(‘:‘))
return product_list
# 保存商品
def save_product(product_list):
with open(‘product.txt‘,‘w‘) as f:
for i in product_list:
i = str(i).replace(‘[‘, ‘‘)
i = str(i).replace(‘]‘, ‘‘)
i = str(i).replace(‘ ‘, ‘‘)
f.write(i+‘\n‘)
product_list = get_product()
while True:
for index,item in enumerate(product_list):
print(index,item)
choice = input(‘请输入要修改的商品序号||按a添加||按q退出:‘)
if choice.isdigit():
choice = int(choice)
p_item = product_list[choice]
print(p_item)
price = input("请输入修改后的价格:")
product_list[choice][1] = price
print(product_list)
save_product(product_list)
print("修改成功!")
elif choice == ‘a‘:
name = input(‘请输入你要添加的商品名称:‘)
price = input(‘请输入你要添加的商品价格:‘)
add_pro = [name,price]
product_list.append(add_pro)
print(product_list)
save_product(product_list)
print(‘添加成功!‘)
elif choice == ‘q‘:
exit()
else:
print("输入无效!")
以上是关于实现购物车功能 --- 文件操作版的主要内容,如果未能解决你的问题,请参考以下文章
JavaWeb SpringBoot 电商书城平台系统(已调试《精品毕设》) 实现了书城网站的浏览加入购物车操作订单操作支付操作分类查看搜索以及后台上传图书信息以及订单管理和一些基本功能