网站购物,使用pickle

时间:2023-03-09 14:56:49
网站购物,使用pickle
主程序,     

#!/usr/bin/env python
#_*_ coding:utf- _*_
import pickle
import os
import sys
import time
import pickle
dirname = os.path.dirname(os.path.dirname(__file__))
sys.path.append(dirname) carshop = []
pricelist = [] shop = {
'car':,
'iphone':,
'apple':,
'orange':,
'banana':
} def caradd():
while True:
for index,key in enumerate(shop.keys()):
print index,'\t',key,'\t\t',shop[key]
num = int(raw_input('请选在购买的商品ID,添加到购物车: ')) if shop.keys()[num]:
carshop.append([shop.items()[num],time.strftime("%Y-%m-%d %X", time.localtime())])
print carshop
else:
print '请选择商品编号,或者您购买的商品不存在' name = raw_input('是否继续购物(y/n): ')
if name == 'y':
continue
else:
print '系统将返回到首页'
return True def showcar():
for index1,key in enumerate(carshop,):
pricelist.append(key[][])
print index1,key[][] def price_sum():
res1 = reduce(lambda x,y:x+y,pricelist)
return res1 while True:
print '''-------欢迎访问本商城------
进行购物
查看购物车
'''
choose = int(raw_input('请按照提示信息进行输入: '))
if choose == :
result = caradd()
if result == 'True':
break
elif choose == :
if carshop:
showcar()
price = price_sum()
print '您一共够买了',price
else:
print '你还没有购物,购物车为空' commitcar = raw_input('时候马上结算(y/n): ')
if commitcar == 'y':
username = int(raw_input('请输入信用卡账号: '))
passwd = int(raw_input('请输入信用卡密码: ')) with open('user_pass','r') as f:
data = pickle.load(f)
for k,v in data.items():
print k,v
if k == username and passwd == v[]:
print '将从信用卡中扣除商品金额'
salary = v[]
if price > salary:
print '信用卡额度不足,无法购买商品'
break
else:
salary_new = salary - price
print salary_new
v[] = salary_new
with open('user_pass','w') as f:
pickle.dump(data,f)
print '支付成功,系统退出'
sys.exit()
else:
print '----------------------->'
else:
continue
使用pickle生成user_pass文件

#!/usr/bin/env python
#_*_ coding:utf- _*_
import pickle dic_pick = {
:[,]
}
f = open('user_pass','w') pickle.dump(dic_pick,f)
f.close() ###############################
#!/usr/bin/env python
#_*_ coding:utf- _*_ import pickle f = open('user_pass','r')
data = pickle.load(f)
print data