带用户登录的购物车

  1 #!/usr/bin/env python
  2 # -*- coding: utf-8 -*-
  3 import getpass
  4 import sys
  5 f = open(‘user.db‘,‘r‘)
  6 welcome="欢迎来欢乐多购物平台"
  7 out = ‘谢谢惠顾小店‘
  8 user_money = 5000000
  9 shopping_list = []
 10 shopping_car = {}
 11 chose_list = []
 12 goods = [
 13     {"name": "电脑", "price": 1999},
 14     {"name": "鼠标", "price": 10},
 15     {"name": "游艇", "price": 20},
 16     {"name": "手机", "price": 6000},
 17     {"name": "手表", "price": 5000},
 18     {"name": "香烟", "price": 100},
 19     {"name": "啤酒", "price": 200},
 20     {"name": "音响", "price": 300},
 21     {"name": "啤酒", "price": 400},
 22     {"name": "红酒", "price": 1000},
 23     {"name": "牛奶", "price": 600},
 24     {"name": "雪碧", "price": 700},
 25     {"name": "饮水机", "price": 800},
 26     {"name": "机械键盘", "price": 3000},
 27     {"name": "钱包", "price": 900},
 28     {"name": "刮胡刀", "price": 1100},
 29     {"name": "充电宝", "price": 50},
 30     {"name": "咖啡", "price": 1200},
 31     {"name": "眼镜", "price": 1300},
 32     {"name": "电脑包", "price": 1400},
 33     {"name": "电视机", "price": 4000},
 34
 35 ]
 36 data = f.read()
 37 f.close()
 38 user_db_list = []
 39 user_info_list = data.split(‘\n‘)
 40 print(user_info_list)
 41 for item in user_info_list:
 42     temp = item.split(‘|‘)
 43     v = {
 44         ‘name‘: temp[0],
 45         ‘password‘: temp[1],
 46         ‘number‘: temp[2],
 47     }
 48     user_db_list.append(v)
 49 print(welcome)
 50 p = 0
 51 while True:
 52     user_name = input(‘请输入您的账号:‘)
 53     if user_db_list:
 54         user_password = input(‘请输入您的密码:‘)
 55     for index,user_list in enumerate(user_db_list):
 56         if user_name == user_list[‘name‘] and int(user_list[‘number‘]) < 3:
 57             if user_password == user_list[‘password‘]:
 58                 print(‘欢迎‘,user_name,‘登录我们平台‘,‘账号金额:‘,user_money)
 59                 one_goods = goods[0:5]
 60                 for l in one_goods:
 61                     print(l)
 62                 print(‘1页/6页‘)
 63                 while True:
 64                     s = input(‘请输入页码:‘)
 65                     s = int(s)
 66                     start = (s - 1) * 5
 67                     end = s * 10
 68                     one_goods = goods[start:end]
 69                     for i in enumerate(one_goods):
 70                         shop_id = i[0]
 71                         shop_name = i[1].get(‘name‘)
 72                         shop_money = i[1].get(‘price‘)
 73                         print(‘商品id:‘, shop_id, ‘商品:‘, shop_name, ‘售价:‘, shop_money)
 74                     enterone = input(‘请问你需要选购么?y/n‘)
 75                     if enterone.lower() and enterone == ‘y‘:
 76                         print(‘请您输入你想要的商品id,选购完毕离开请输入Q/q‘)
 77                         while True:
 78                             choose = input(‘上帝的选择:‘)
 79                             if choose.lower() and choose == ‘q‘:
 80                                 break
 81                             elif int(choose) > int(len(one_goods)):
 82                                 print(‘亲爱的上帝,您输入的数字不在商品列表中,请重新输入‘)
 83                                 continue
 84                             else:
 85                                 now_money = user_money
 86                                 user_money = user_money - goods[int(choose)].get(‘price‘)
 87                                 if now_money <= goods[int(choose)].get(‘price‘):
 88                                     print(‘您的账号余额:‘, now_money, ‘购买:‘, goods[int(choose)], ‘还差:‘, user_money)
 89                                     # print(‘加入购物车失败!‘)
 90                                     print("""
 91                                     1  充值
 92                                     2  删减购物车
 93                                     """)
 94                                     now_chose = input(‘请选择:1/2‘)
 95                                     if int(now_chose) == 1:
 96                                         recharge_money = int(input(‘请输入充值金额:‘))
 97                                         user_money = user_money + recharge_money
 98                                         print(‘您的账号金额:‘, user_money)
 99                                     elif int(now_chose) == 2:
100                                         for w in enumerate(chose_list):
101                                             print(w)
102                                         while True:
103                                             remove_list = input(‘请输入您想要删除的商品id:退出请输入Q/q‘)
104                                             now_list = int(len(chose_list))
105                                             if remove_list.lower() and remove_list == ‘q‘:
106                                                 print(‘已成功返回上一层:‘)
107                                                 break
108                                             elif int(remove_list) < now_list:
109                                                 g = None
110                                                 e = chose_list[int(remove_list)]
111                                                 for g in enumerate(goods):
112                                                     if str(e) in g[1].get(‘name‘):
113                                                         user_money = now_money + g[1].get(‘price‘)
114                                                         print(‘您现在的余额为:‘, user_money)
115                                                 del chose_list[int(remove_list)]
116                                                 print(chose_list)
117                                             else:
118                                                 print(‘输入有误请重新输入‘)
119
120                                 else:
121                                     chose_list.append(goods[int(choose)].get(‘name‘))
122                                     print(chose_list)
123                         print(chose_list)
124                     else:
125                         print(‘请稍候....,现在系统为你自动结算,‘)
126                         print(‘您的账号余额:‘, user_money)
127                         print(‘您购买的商品:‘, chose_list)
128                         shop_list = open(‘shopdata‘, ‘w+‘,encoding=‘UTF-8‘)
129                         nstr =str(chose_list)
130                         shop_list.write(nstr)
131                         shop_list.close()
132                         # pass
133                         sys.exit()
134             else:
135                 print(‘账号密码错误,请重新输入‘)
136                 # data_read = open(‘user.db‘,‘r‘)
137                 # #
138                 #  data_write = ""
139                 #  data_write = user_list[‘name‘],user_list[‘number‘])= p
140                 break
141         else:
142             print(‘您输入的是未注册账号‘)
143             break
144     p += 1
145     if p == 3:
146         print(‘你的尝试超过限定次数,已退出‘)
147         break
时间: 2024-10-25 03:54:00

带用户登录的购物车的相关文章

在Windows2003安装配置Bitvise SSH Server后,不能使用软件内建立的用户登录!

Google:  I can only log in with an administrator account - attempting to log in with a regular account fails. There are two most common causes. You are trying to log in with an account configured in Bitvise SSH Server to use the 'interactive' logon t

day01课程回顾,数据类型,(用户登录限制登录三次,购物车,省市县三级联动)

Day01 Python的分类 Cpython:代码àc字节码->机器码   一行一行的编译执行 Pypy:   代码àc字节码->机器码   全部转换完再执行 其他python  代码-->其他字节码-->机器码 Python的执行 Windows:C:\Python35\python.exe    D:\1.txt(python可执行文件路径---解释器   执行文件) Linux:可以在文件的头部写#!/usr/bin/python    python安装路径(用命令wher

测试面试题集-测试用例设计:登录、购物车、QQ收藏表情、转账、充值、提现

以下内容首发于微信公众号[ITester软件测试小栈]: 测试面试题集-2.测试用例设计 大家好 我是coco小锦鲤 上周五给大家分享了测试基础理论题 这个周五给大家分享测试用例设计题 测试用例的考察无非是检验 是否可以理解给定的需求 是否有设计测试用例的能力是否熟悉各种测试方法 是否有灵活的发散思维 以下给大家列举 登录功能 购物车模块 QQ收藏表情包 网上银行转账 支付宝充值 支付宝提现 6大常见的测试用例设计面试题 Q: 一.登录功能,设计测试用例. A: 功能测试: 1.输入正确的账号和

【mfc】用对话框分页实现用户登录

所谓的对话框分页就是点击完一个对话框的按钮,切换到另一个对话框, 这样的对话框多用于一些需要用户登录才能够进行操作的软件, 下面就用对话框分页来实现用户登录系统 一.基本目标 有如下的程序,输入用户名与密码,如果用户名为admin,密码为123456,那么则成功登录,切换到一个有"欢迎登录"与"关闭"按钮的对话框 如果用户名或者密码输入错误则弹出提示, 点击关闭能够关闭这个程序,不弹出用户登录的对话框. 二.制作过程 1.首先如同之前的<[mfc]对于对话框程

Window上python开发--4.Django的用户登录模块User

在搭建网站和web的应用程序时,用户的登录和管理是几乎是每个网站都必备的.今天主要从一个实例了解以下django本身自带的user模块.本文并不对user进行扩展. 主要使用原生的模块. 1.User模块基础: 在使用user 之前先import到自己的iew中.相当与我们自己写好的models.只不过这个是系统提供的models. from django.contrib.auth.models import User # 导入user模块 1.1User对象属性 User 对象属性:usern

【转】MVC4验证用户登录特性实现方法

在开发过程中,需要用户登陆才能访问指定的页面这种功能,微软已经提供了这个特性. // 摘要: // 表示一个特性,该特性用于限制调用方对操作方法的访问. [AttributeUsage(AttributeTargets.Class | AttributeTargets.Method, Inherited = true, AllowMultiple = true)] public class AuthorizeAttribute : FilterAttribute, IAuthorizationF

9.用户模块:用户登录功能

用户登录业务: 1.用户登录页面点击登录校验用户名和密码不能为空! 2.登录失败页面不跳转,显示登录失败错误信息! 3.登录成功跳转到首页,首页显示登录人的姓名. -------------------------相关代码----------------------------------- 1.login.jsp 首先提交执行函数checkForm进行用户名和密码的校验,然后提交到action="${pageContext.request.contextPath }/user_login.ac

用户登录失败,该用户与可信SQL Server连接无关联,错误:18452

安装好SQLServer2005(或者装了Visual Studio 2008后自带的SQLServer2005)用SQL Server身份验证的登录的时候有时候会发生这种情况: 这样的错误的原因是:安装SQL Server时,限制了登录方式为Windows身份验证,所以在使用详细用户登录的时候便登陆出错,解决的方法为: 1.使用Windows身份验证后右键点击登录server的属性. 2.选择"安全性"将'server身份验证'设置为:SQL Server和Windows身份验证模式

MVC4项目中验证用户登录一个特性就搞定

在开发过程中,需要用户登陆才能访问指定的页面这种功能,微软已经提供了这个特性. // 摘要: // 表示一个特性,该特性用于限制调用方对操作方法的访问. [AttributeUsage(AttributeTargets.Class | AttributeTargets.Method, Inherited = true, AllowMultiple = true)] public class AuthorizeAttribute : FilterAttribute, IAuthorizationF