#!/usr/bin/env python
# -*- coding: utf-8 -*-
print('欢迎土豪光临随心所欲旗舰店')
user_money = int(input('老板,请输入你拥有的总资产:'))
shopping_list = []
shopping_car = {}
chose_list = []
out = '谢谢惠顾小店'
goods = [
{"name": "电脑", "price": 1999},
{"name": "鼠标", "price": 10},
{"name": "游艇", "price": 20},
{"name": "美女", "price": 998},
]
# 向用户展示商品
for i in enumerate(goods):
shop_id = i[0]
shop_name = i[1].get('name')
shop_money = i[1].get('price')
print('商品id:', shop_id, '商品:', shop_name, '售价:', shop_money)
enterone = input('请问你需要选购么?y/n')
if enterone.lower() and enterone == 'y':
print('请您输入你想要的商品id,选购完毕离开请输入Q/q')
while True:
choose = input('上帝的选择:')
#if int(choose) > 3:
# print('亲爱的上帝,您输入的数字不在商品列表中,请重新输入')
# continue
#else:
# pass
if choose.lower() and choose == 'q':
break
elif int(choose) > int(len(goods)):
print('亲爱的上帝,您输入的数字不在商品列表中,请重新输入')
continue
else:
now_money = user_money
user_money = user_money - goods[int(choose)].get('price')
if now_money <= goods[int(choose)].get('price'):
print('您的账号余额:',now_money,'购买:',goods[int(choose)],'还差:',user_money)
#print('加入购物车失败!')
print("""
1 充值
2 删减购物车
""")
now_chose = input('请选择:1/2')
if int(now_chose) == 1:
recharge_money = int(input('请输入充值金额:'))
user_money = user_money + recharge_money
print('您的账号金额:',user_money)
elif int(now_chose) == 2:
for w in enumerate(chose_list):
print(w)
while True:
remove_list = input('请输入您想要删除的商品id:退出请输入Q/q')
now_list = int(len(chose_list))
if remove_list.lower() and remove_list == 'q':
print('已成功返回上一层:')
break
elif int(remove_list) < now_list:
g = None
e = chose_list[int(remove_list)]
for g in enumerate(goods):
if str(e) in g[1].get('name') :
user_money = now_money + g[1].get('price')
print('您现在的余额为:',user_money)
del chose_list[int(remove_list)]
print(chose_list)
else:
print('输入有误请重新输入') else:
chose_list.append(goods[int(choose)].get('name'))
print(chose_list)
print(chose_list)
else:
print('请稍候....,现在系统为你自动结算,')
#pass
print('您的账号余额:', user_money)
print('您购买的商品:',chose_list)

shopping_cart的更多相关文章

  1. Python学习笔记(5)practice:shopping_cart

    2019-02-27 原代码: money = int(input("请输入金额:")) list = ["phone", "clothes" ...

  2. python之信用卡ATM(第五天)

    本节作业 作业需求: 模拟实现一个ATM + 购物商城程序 额度 15000或自定义 实现购物商城,买东西加入 购物车,调用信用卡接口结账 可以提现,手续费5% 每月22号出账单,每月10号为还款日, ...

  3. python3 购物程序

    要求: 一.启动程序后,选择是商家还是用户 1.选择商家用户 输入用户名,密码进入 选择增加商品及价格:格式:  商品名称 价格 选择编辑商品及价格:根据提示进行操作 2.选择用户 输入用户名,密码进 ...

  4. 基于python网络编程实现支持购物、转账、存取钱、定时计算利息的信用卡系统

    一.要求 二.思路 1.购物类buy 接收 信用卡类 的信用卡可用可用余额, 返回消费金额 2.信用卡(ATM)类 接收上次操作后,信用卡可用余额,总欠款,剩余欠款,存款 其中: 1.每种交易类型不单 ...

  5. Python之路 day2 购物车小程序1

    #Author:ersa ''' 程序:购物车程序 需求: 启动程序后,让用户输入工资,然后打印商品列表 允许用户根据商品编号购买商品 用户选择商品后,检测余额是否够,够就直接扣款,不够就提醒 可随时 ...

  6. coffeescript 1.8.0 documents

    CoffeeScript is a little language that compiles into JavaScript. Underneath that awkward Java-esque ...

  7. git workflow常用命令

    git init git status git add readme.txt git add --all         Adds all new or modified files git comm ...

  8. 以优美方式编写JavaScript代码

    英文原文:CoffeeScript: The beautiful way to write JavaScript 我用 JavaScript 编程很多年了,写了大量的 JavaScript 代码,即便 ...

  9. python基础:三层循环

    三层循环基本演示: break_flag = False #标记1 break_flag2 = False #标记2 break_flag3 = False #标记3 while not break_ ...

随机推荐

  1. 开源的.NET定时任务组件Hangfire解析

    项目慢慢就要开工了,很多园友都在问这个事情,看来大伙对这事很上心啊,事情需要一步步的来,尽量写出一个我们都满意的项目.以前每次在博客前面都会扯淡一下,不过很多人都抱怨这样做不好,加上我这人扯淡起来就停 ...

  2. python服务器环境搭建(2)——安装相关软件

    在上一篇我们在本地的虚拟服务器上安装好CentOS7后,我们的python web服务.自定义的python service或python脚本需要在服务器上运行,还需要在服务器安装各种相关的软件才行, ...

  3. HTML——超文本标记语言(表单及12个表单元素)

    表单 格式: <form action=" " method="get/post"  placehoder=" "></f ...

  4. nodejs npm常用命令 转

    npm是一个node包管理和分发工具,已经成为了非官方的发布node模块(包)的标准.有了npm,可以很快的找到特定服务要使用的包,进行下载.安装以及管理已经安装的包. 1.npm install m ...

  5. java集合体系

    Collection接口: 1.单列集合类的根接口. 2.定义了可用于操作List.Set的方法--增删改查: 3.继承自Iterable<E>接口,该接口中提供了iterator() 方 ...

  6. 任务调度之集群(基于Quartz.net)

    上一篇我们完成了任务调度的持久化,传送门:任务调度之持久化(基于Quartz.net) 这篇我们来完成Quartz.net的一个比较优秀的功能,即集群:集群可以提高任务调度服务的容灾性, 当一个节点宕 ...

  7. linuxCentOs6前期简单且必要的设置

    1.修改主机名 Sudo vi /etc/sysconfig/network(需要重启) Hostname master (不需要重启,设置当前主机名为master) Hostname查看当前主机名 ...

  8. 老李推荐:第8章2节《MonkeyRunner源码剖析》MonkeyRunner启动运行过程-解析处理命令行参数 2

    我们这一节会先去分析下monkeyrunner是如何对参数进行处理的,我们跳转到MonkeyRunnerOptions这个类里面的processOptions这个方法: 93   public sta ...

  9. salesforce 零基础学习(六十八)http callout test class写法

    此篇可以参考: https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_classes_restfu ...

  10. Java -- 浅入Java反射机制

    1,Java 反射是Java语言的一个很重要的特征,它使得Java具体了"动态性". Java 反射机制主要提供了以下功能: 在运行时判断任意一个对象所属的类. 在运行时构造任意一 ...