淘淘购物系统 (Python)
#首页def tao_first(): t1 = '欢迎进入淘淘购物'.center(110) print(t1) print('~' * 130) t2 = '注册'.center(20) print(t2,end='\t') t3 = '登陆'.center(65) print(t3,end='\t') t4 = '退出'.center(45) print(t4,end='\t') print() print('~' * 130) ##购物车首页def tao_second(): second0 = '|| 购物车 ||'.center(125) print(second0) print() print('=' * 130) print('商品名称',end='\t') print('价格',end='\t') print('数量',end='\t') print('\n') for i in sprice: print(i) print('-' * 130) print('提交订单'.center(20),end='\t') print('删除订单'.center(65),end='\t') print('添加订单'.center(45),end='\t') print('\n') print('查看订单'.center(20),end='\t') print('继续购物'.center(65),end='\t') print('退出系统'.center(45),end='\t') print('\n') print('=' * 130)
#登陆shop_name = ''def login(): l0 = '|| 登陆 ||'.center(115) print(l0) i = 3 while i > 0: username = input('please input the username :') password = input('please input the password : ') if username in lisl[0::2] and password in lisl[1::2] : wage.append(username) wage.append(0) shop_name = username break else: i -= 1 print('验证失败,请再次尝试,您还有'+str(i)+'次机会') continue#注册def enter(): while 1: e0 = '|| 注册 ||'.center(115) print(e0) e1 = input('请输入用户名:') e2 = input('请输入密码:') e3 = input('请再次确认密码:') if e3 == e2 and e1 not in lisl: print('恭喜你注册成功,快去登陆吧...') lisl.append(e1) lisl.append(e3) break if e3 != e2 : print('对不起你输入的密码两次不一致,请重新注册') continue if e1 in lisl: print('对不起你输入的账户信息已存在,请重新注册') continue#工资def staff_wage(): """ wage = [uername : wage] shop_name = uername :return: """ while 1: if wage[1] < money: print(wage[0] + '的工资是' + str(wage[1]) + '人民币,不足以支付订单...') print('|| 支付 ||'.center(115)) print('=' * 130) print('充值金钱'.center(20),end='\t') print('查看余额'.center(65),end='\t') print('放弃支付'.center(45),end='\t') print('\n') print('=' * 130) shop_k = input('请输入你要选择的功能<<<') if shop_k == '充值金钱': age = input('请输入你要充值的金钱<<<') wage[1] = wage[1] + int(age) print('恭喜你,充值成功!') if shop_k == '查看余额': print(wage[0] + '的余额是' + str(wage[1]) + '人民币') if shop_k == '放弃支付': break if wage[1] > money : wage[1] = wage[1] - money print('订单提交成功!'+wage[0]+',您的余额还有'+str(wage[1])+'人民币') sprice.clear() break
#列表信息lisl = ['deng','123','taibai','123456','alex','2019','Jing','2017']sprice = []#遍历商品mess = [] # 列表,存上一级菜单def message(): # 商品信息 shopping = { '首页': {'天猫新品': { 'marmot保暖鹅绒':2219, '丝飘本色卷纸':9, 'marmot男士长袖':229 }, '今日爆款': { '拉菲珍藏波尔多6支':359, '美心流心奶黄月饼礼盒':348, '乳酸菌饮品340ml*12瓶整箱':16 }, '天猫超市': { '蓝月亮洁净洗衣液':9, '好想你免洗灰枣':9, '友臣福建特产肉松饼':29 }, '飞猪旅行': { '哈尔滨接机服务':30, '芽庄泥浆浴一日游':58, '张家界大峡谷门票':208 } },
'母婴': {'毛绒玩具': { '冰丝抱枕北极熊':268, '猫咪陪你睡觉抱枕':69, '可爱仓鼠小老鼠睡觉抱枕':29 }, '儿童运动鞋': { 'NIKE':1000, 'Adidas':800, '乔丹':100 }, '益智玩具': { '魔方':30, '变形金刚':200, '探索者':30000 } },
'百货': {'低价清仓': { }, '水杯': { '马克杯':18, '玻璃杯':5, '保温杯':60 }, '拖鞋': { '夏季拖鞋':20, '冬季拖鞋':50 }, '颈枕': { 'u型枕':79, '记忆枕':245 } },
'运动': {'跑鞋': { 'NIKE': 1000, 'Adidas': 800, '乔丹': 100 }, '自行车': { '凤凰自行车':700, '上海永久':500 }, '球鞋': { 'NIKE': 1000, 'Adidas': 800, '乔丹': 100 } }
} while 1 : print('商品信息'.center(110)) print('~' * 130) for i in shopping: print(i.center(110)) print('~' * 130) choice = input('请输入你要访问的商品') if choice in shopping: if type(shopping[choice]) is int : print('是否购买该商品,如果购买输入Y,否则输入b返回上一级菜单') pp1 = input('<<<') if pp1.upper() == 'Y': for tom in range(len(sprice)): if choice in sprice[tom][0]: sprice[tom][2] = sprice[tom][2] + 1 break # 每一次的信息变成列表形式 space = [] space.append(choice) space.append(shopping[choice]) space.append(1) sprice.append(space) print('购买成功,已添加购物车!') while len(sprice) > 1 : if sprice[-1][0] in sprice[0:-1][0]: del sprice[-1] else: break else: mess.append(shopping) shopping = shopping[choice] if choice == 'e': break if choice == 'b': shopping = mess[-1] del mess[-1]
#main0方法 #购物模块def main0 (): while 1: tao_first() t5 = input('你输入你要选择的功能<<<') if t5 == '注册': enter() elif t5 == '登陆': login() break elif t5 == '退出': exit() message()
money = 0 # 金钱【账单总值】wage = [] #工资#main1方法def main1(): global money while 1: tao_second() ma1 = input('你选择服务<<<') if ma1== '提交订单': for i in range(len(sprice)): money = sprice[i][1] * sprice[i][2] second2 = '|| 购物车订单 ||'.center(125) print(second2) print() print('=' * 130) print('商品名称', end='\t') print('价格', end='\t') print('数量', end='\t') print('\n') for i in sprice: print(i) print('-' * 130) print('您本次需要支付'+str(money)+'人民币') staff_wage()
if ma1 == '删除订单': add_mal2 = input('请输入你要删除的商品名称:') add_mal3 = input('请输入你要删除该商品名称的个数:') for tom in range(len(sprice)): if add_mal2 in sprice[tom][0]: if int(add_mal3) >= sprice[tom][2] : del sprice[tom] else: sprice[tom][2] = sprice[tom][2] - int(add_mal3) if ma1 == '添加订单': add_mal0 = input('请输入你要添加的商品名称:') add_mal1 = input('请输入你要添加该商品名称的个数:') for tom in range(len(sprice)): if add_mal0 in sprice[tom][0]: sprice[tom][2] = sprice[tom][2] + int(add_mal1) print('订单添加成功!') if ma1 == '查看订单': second1 = '|| 购物车订单 ||'.center(125) print(second1) print() print('=' * 130) print('商品名称', end='\t') print('价格', end='\t') print('数量', end='\t') print('\n') for i in sprice: print(i) print('-' * 130) if ma1 == '继续购物': message()
if ma1 == '退出系统': exit()
#main方法def main(): main0() main1()main()
淘淘购物系统 (Python)的更多相关文章
- 绝对好评的淘宝购物导航:baiso.uz.taobao.com
绝对好评的淘宝购物导航:baiso.uz.taobao.com 绝对好评的淘宝购物导航--百搜:http://baiso.uz.taobao.com
- python 操作mysql数据库之模拟购物系统登录及购物
python 操作mysql数据库之模拟购物系统登录及购物,功能包含普通用户.管理员登录,查看商品.购买商品.添加商品,用户充值等. mysql 数据库shop 表结构创建如下: create TAB ...
- JAVAEE——淘淘商城第一天:电商行业的背景和技术特点,商城的介绍、技术的选型、系统架构和工程搭建
1. 学习计划 1.电商行业的背景. 2.电商行业的技术特点 3.商城的介绍 a) 常用的名词介绍 b) 系统功能介绍 4.淘淘商城的系统架构 a) 传统架构 b) 分布式架构 c) 基于服务的架构 ...
- day78_淘淘商城项目_11_单点登录系统实现 + 用户名回显 + ajax请求跨域问题详解_匠心笔记
课程计划 1.SSO注册功能实现 2.SSO登录功能实现 3.通过token获得用户信息 4.ajax跨域请求解决方案--jsonp 1.服务接口实现 SSO系统就是解决分布式环境下登录问题的,本 ...
- 第04项目:淘淘商城(SpringMVC+Spring+Mybatis)【第十二天】(系统架构讲解、nginx)
https://pan.baidu.com/s/1bptYGAb#list/path=%2F&parentPath=%2Fsharelink389619878-229862621083040 ...
- 第04项目:淘淘商城(SpringMVC+Spring+Mybatis)【第十天】(单点登录系统实现)
https://pan.baidu.com/s/1bptYGAb#list/path=%2F&parentPath=%2Fsharelink389619878-229862621083040 ...
- [ python ] 购物系统
作业需求 1. 购物系统,能够注册登录,用户第一次登录后,让用户输入金额,然后打印商品列表2. 允许用户根据商品编号购买商品3. 用户选择商品后,检测余额是否够,够就直接扣款,不够就提醒4. 购买完一 ...
- 淘淘商城_day11_课堂笔记
今日大纲 发布前的准备 实施发布 一部分是由我来发布 一部分是由你们来发布 讲解分布式部署架构 测试 功能测试 压力测试 项目实战的准备以及分组 分组 抽取功能 讲解所需要开发的功能 项目部署上线流程 ...
- 淘淘商城_day04_课堂笔记
今日大纲 实现首页的大广告位功能 实现内容管理系统 首页的大广告 什么是大广告 JS效果: 点击下面的序号选择查询哪个广告 自动切换 点击图片查询具体的页面 以上是由前端团队来开发. 数据结构 说明: ...
随机推荐
- Js面向对象构造函数继承
构造函数继承 <!-- 创建构造函数 --> function Animal(){ this.species= '动物'; } function Dog(name,color){ this ...
- 完全零基础在Linux中安装 JDK
完全零基础在Linux中安装 JDK 总体思路:先确定没有Java程序了 — 然后创建相应路径文件夹 — 下载JDK — 解压到当前路径 — 自定义文件名称 — 配置环境变量 — 检查是否安装成功 第 ...
- php sql 类似 mybatis 传参
PHP sql 处理上,没有类似于 java mybatis 的工具,导致进行一些sql 处理时,会有诸多不便, 楼主抽时间写了一个 php 类似 mybatis 的sql 工具,省去了拼装sql 的 ...
- win10和浏览器快捷键
1. Win10快捷键[Win+↑/↓/←/→] 将当前窗口按比例固定到屏幕的四个边角,如左上.右上.左下.右下.[Win+1/2/3…] 按顺序打开任务栏上的已固定程序(不包括第一个“任务视图”按钮 ...
- 使用Jasypt对SpringBoot配置文件加密
# **前言** 在日前安全形势越来越严重的情况下,让我意识到在项目中存在一个我们经常忽略的漏洞,那就是我们的项目的配置文件中配置信息的安全,尤其是数据库连接的用户名和密码的安全.所以这里我们就需要对 ...
- Duilib的圆环形 进度条 实现(网易云信版本)
/** @file CircleProgress.h* @brief 圆环型进度条控件,圆环中间可以有文本(如85%)* @copyright (c) 2019-2022, NetEase Inc. ...
- Tomcat源码分析 (八)----- HTTP请求处理过程(一)
终于进行到Connector的分析阶段了,这也是Tomcat里面最复杂的一块功能了.Connector中文名为连接器,既然是连接器,它肯定会连接某些东西,连接些什么呢? Connector用于接受请求 ...
- NVIDIA: Failed to initialize NVML: driver/library version mismatch
[NVIDIA驱动:Failed to initialize NVML: driver/library version mismatch] 原因:Ubuntu16.04 装新驱动时,会报以上错误,定位 ...
- python之“装饰器”
在python里装饰器 其定义:装饰器就是一个函数,用来装饰其他函数,就是给其他函数添加功能. 装饰器有两个特点: 1.装饰器不修改被装饰函数的源码: 2.装饰器不锈钢被装饰函数的调用方式. 在编程中 ...
- HMM学习
参看博客: 1.https://www.cnblogs.com/skyme/p/4651331.html 2.https://blog.csdn.net/continueoo/article/deta ...