首页 > 编程语言 > 详细

python-文件操作-之优化购物车

时间:2020-03-01 14:57:42      阅读:47      评论:0      收藏:0      [点我收藏+]

#此次购物车优化,主要使用了文件操作的相关方法。

#有买家入口,和商家入口

#买家入口

#买家第一次启动程序输入金额,金额会记录到文件里,再登录就读取文件里保存的金额,买家可以购买商品,按 ‘q’ 退出后显示购买的商品和余额,并保存购买过的商品和余额。


global data
global userinformation
money=‘‘
data=‘data.txt‘
userinformation=‘userinformation.txt‘
mgoods=[]
exit_flag = False
def shuoppxit(money):
if money.isdigit():
while not exit_flag:
for index, item in enumerate(goods):
print(index, item)
numbres = input("输入购买商品的序号:")
if numbres.isdigit():
numbres = int(numbres)
if numbres< len(goods) and numbres >=0:
money = int(money)
numbres_goods=goods[numbres][1]
if money >= numbres_goods:
money=money-numbres_goods
goods[numbres].append(‘余额‘)
goods[numbres].append(money)
print(goods[numbres])
mgoods.append(goods[numbres])
f = open(userinformation, ‘w+‘, encoding=‘utf-8‘)
f.write(str(mgoods))
f.close()
print(‘购买商品成功:‘+goods[numbres][0])
print(‘剩余金钱:\033[31;1m %s \33[0m‘ % money )
else:
print(‘余额不足!‘)
elif numbres==‘q‘ or numbres==‘Q‘:
print(‘你购买的商品如下:‘)
f = open(userinformation, ‘r‘, encoding=‘utf-8‘)
data2 = f.read()
goods2 = eval(data2)
for i in goods2:
print(i)
break
else:
print(‘输入错误!!‘)
else:
print(‘输入错误!!,重新输入‘)

f = open(data,‘r‘,encoding=‘utf-8‘)
data2 = f.read()
goods = eval(data2)

f = open(userinformation,‘r‘,encoding=‘utf-8‘)
data2 = f.read()
if data2 !=‘‘:
usernames = eval(data2)
money= usernames[0][3]
money=str(money)
shuoppxit(money)
else:
money = input("输入你的钱:")
shuoppxit(money)

#商家入口
#商家可以添加产品,和修改价格

global data
money=‘‘
data=‘data.txt‘
mgoods=[]
exit_flag = False

f = open(data,‘r‘,encoding=‘utf-8‘)
data2 = f.read()
goods = eval(data2)
print(goods)
while not exit_flag:
choice=input(‘1、添加商品 2、修改价格:‘)
if choice.isdigit():
if choice==‘1‘:
name=input(‘输入商品名:‘)
price=input(‘输入价格:‘)
mgoods.append(name)
mgoods.append(price)
goods.append(mgoods)
f = open(data, ‘w‘, encoding=‘utf-8‘)
f.write(str(goods))
f.close()
print(goods)
else:
for index, item in enumerate(goods):
print(index, item)
numbres = input("输入修改商品的序号:")
if numbres.isdigit():
numbres = int(numbres)
if numbres < len(goods) and numbres >= 0:
jiage = input("输入修改商品价格:")
if jiage.isdigit():
jiage = int(jiage)
goods[numbres][1]= jiage
f = open(data, ‘w‘, encoding=‘utf-8‘)
f.write(str(goods))
f.close()
print(goods)
exit_flag=True


学习无止境,加油
 

 

python-文件操作-之优化购物车

原文:https://www.cnblogs.com/km-thonder/p/12389806.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!