网站购物,使用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
网站购物,使用pickle的更多相关文章
- HTML+CSS Day11产品网站
1.佰亿首页 效果图: 代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "ht ...
- 千万pv大型web系统架构,学习从点滴开始
架构,刚开始的解释是我从知乎上看到的.什么是架构?有人讲, 说架构并不是一 个很 悬 乎的 东西 , 实际 上就是一个架子 , 放一些 业务 和算法,跟我们的生活中的晾衣架很像.更抽象一点,说架构其 ...
- 精通Web Analytics 2.0 (8) 第六章:使用定性数据解答”为什么“的谜团
精通Web Analytics 2.0 : 用户中心科学与在线统计艺术 第六章:使用定性数据解答"为什么"的谜团 当我走进一家超市,我不希望员工会认出我或重新为我布置商店. 然而, ...
- Why MVC is Better?(翻译)
(本文翻译自CodeProject上的一篇关于ASP.NET MVC的文章,原文地址:http://www.codeproject.com/Articles/821275/Webforms-vs-MV ...
- 使用JMeter进行简单的压力测试
一.压力测试 顾名思义:压力测试,就是 被测试的系统,在一定的访问压力下,看程序运行是否稳定/服务器运行是否稳定(资源占用情况). 比如: 2000个用户同时到一个购物网站购物,这些用户打开页面的速 ...
- SQL 存储过程 解析XML
第一种说明: 我看过这样一篇文章,如下 在SQL Server2005中,微软延续了 2000中一个特性(即支持XML类型的数据),并加强了对XML 数据列.XML变量以及XML索引的支持 ...
- K-means算法及文本聚类实践
K-Means是常用的聚类算法,与其他聚类算法相比,其时间复杂度低,聚类的效果也还不错,这里简单介绍一下k-means算法,下图是一个手写体数据集聚类的结果. 基本思想 k-means算法需要事先指定 ...
- MVC 与 webform比较
来自:http://www.cnblogs.com/xiaozhi_5638/p/4019065.html ASP.NET Webforms Behind Code的好处和存在的问题 ASP.NET ...
- 2014年4月份第4周51Aspx源码发布详情
精灵豆会员管理系统源码 2014-4-21 [VS2010]功能介绍:精灵豆会员管理系统业务管理平台采用微软选进的C#语言开发,采用大型数据库,具有比较高的执行效率和高安全性.系统分为消费管理,会员 ...
随机推荐
- foreach语句
foreach语句他无非就是for循环的封装,为了提高开发速度才创造出来的.他其实跟for循环一样,只不过写起来比较简便,他是1.5版本才出来的一种封装语法.并没有什么奇特之处他里面的机制就是for循 ...
- 用Editplus开发Java
☆ 准备工作 ①,已安装好jdk,同时配置系统变量(3个,JAVA_HOME,PATH,CLASSPATH) ②,电脑已安装Editplus,并做好设置. ☆ Editplus配置java开发环境 对 ...
- 相关css 细节处理 neat.css
人性化的细节处理 例如: textarea 默认只能垂直拖动,防止宽度改变破坏布局. textarea { resize: vertical; } 汉字字号小于 12px 不易阅读,为 <sma ...
- jQuery系列:N种方法大总结
jquery自定义属性,区分prop()和attr() jQueryObject.prop( propertyName [, value ] ):为添加,获取属性(property),并非attrib ...
- 【转】TCP协议中的三次握手和四次挥手(图解)
http://blog.csdn.net/whuslei/article/details/6667471
- A trip through the Graphics Pipeline 2011_03
At this point, we’ve sent draw calls down from our app all the way through various driver layers and ...
- Apache Spark源码走读之14 -- Graphx实现剖析
欢迎转载,转载请注明出处,徽沪一郎. 概要 图的并行化处理一直是一个非常热门的话题,这里头的重点有两个,一是如何将图的算法并行化,二是找到一个合适的并行化处理框架.Spark作为一个非常优秀的并行处理 ...
- 理解 Python 中的 *args 和 **kwargs
Python是支持可变参数的,最简单的方法莫过于使用默认参数,例如: def test_defargs(one, two = 2): print 'Required argument: ', one ...
- 【Fate/kaleid liner 魔法少女☆伊莉雅】系列中实践的、新世代的动画摄影工作流
通常的日本动画的摄影中,是以追加Cell(celluloid 赛璐珞)与背景的合成滤镜处理为主,而在[Fate/kaleid liner 魔法少女☆伊莉雅]系列的,加入了自己使用3DCG软 ...
- Yii源码阅读笔记(十六)
Model类,集中整个应用的数据和业务逻辑—— /** * Generates a user friendly attribute label based on the give attribute ...