"""
购物车功能:
a.引导用户输入金额
b.给用户展示所有的商品
c.引导用户输入需要进行的操作【添加 删除 结算购物车 退出】
d.引导用户选择商品
e.引导用户输入需要购买的商品数量
f.添加到购物车【容器】
g.整个循环的操作,循环的次数不确定 """ def add():
print(super_market) # 超市商品列表
print(price_list) #商品价格表
commodity = input("please input you need to add to your shopping basket:") #请输入你需要添加的商品
commodity_number = int(input("please input the number of commodity:")) #请输入你需要添加的商品数量
user_market[commodity] = commodity_number #将商品加到用户购物车中
super_market[commodity] -= commodity_number
return
def dell():
dell_name = input("please input you del name :") # 移除的商品名称
dell_number = int(input("please the number you del:")) #移除的商品的数量
user_market[dell_name] -=dell_number #将购物车中的商品移除
super_market[dell_name] += dell_number #商品放回后超市现有的商品数目
print(user_market)
return
def looking():
print(super_market)
print(user_market)
return
def settlement():
amout = 0
print(user_market)
for key in user_market:
amout += user_market[key] * price_list[key]
print(amout)
if amout > money_user: #如果总价高于所带的金额,退出循环
print("you money is not pay for,please take the full money!")
return False
def exit():
print("Thank you for your presence and welcome to come again next time!!")
return False
money_user = int(input("please user input your take money:"))
super_market = {"apple":50,"watermelon":20,"nuddles":40,"drinks":30}
price_list = {"apple":2,"watermelon":10,"nuddles":6,"drinks":3}
user_market = {}
while True:
operation = int(input("please input your operation\n(1.add****2.del****3.looking****4.settlement****5.exit) :"))
if operation == 1:
add()
elif operation ==2:
dell()
elif operation ==3:
looking()
elif operation ==4:
settlement()
if settlement() == False:
break
elif operation ==5:
exit()
if exit() == False:
break

  

用函数模拟简单的购物车(Python)的更多相关文章

  1. 【python笔记】Qt+云函数 实现简单的登录框制作

    [python笔记]Qt+云函数 实现简单的登录框制作 备注:前置条件:QtDesigner.pycharm.PyQt5.配置好的云函数(百度的叫函数计算CFC,用来充当一个简陋的服务器,主要是免费) ...

  2. python内置函数的简单使用和介绍

    """内置函数的简单使用和介绍参考链接:https://docs.python.org/3/library/functions.html ""&quo ...

  3. python入门:模拟简单用户登录(自写)

    #!/usr/bin/env python # -*- coding: utf-8 -*- #模拟简单用户登录(自写) import getpass a = raw_input("Pleas ...

  4. 『无为则无心』Python函数 — 28、Python函数的简单应用

    目录 1.函数嵌套调用 2.Python函数的简单应用 (1)打印线条 (2)函数计算 (3)打印图形 3.函数的说明文档 (1)函数的说明文档的作用 (2)函数说明文档的语法 (3)查看函数的说明文 ...

  5. FineUI小技巧(1)简单的购物车页面

    起因 最初是一位 FineUI 网友对购物车功能的需求,需要根据产品单价和数量来计算所有选中商品的总价. 这个逻辑最好在前台使用JavaScript实现,如果把这个逻辑移动到后台C#实现,则会导致过多 ...

  6. NS2仿真:使用NS仿真软件模拟简单网络模型

    NS2仿真实验报告1 实验名称:使用NS仿真软件模拟简单网络模型 实验日期:2015年3月2日~2015年3月7日 实验报告日期:2015年3月8日 一.实验环境(网络平台,操作系统,网络拓扑图) 运 ...

  7. JQuery模拟实现天猫购物车动画效果

    测试程序源代码下载地址:源码 一.功能描述: 1.点击购买按钮,模拟抛物线将物品弹到购物车里: 2.购物车添加物品后,显示+1动画: 效果图如下: 实现如下: 1.导入jquery相关的包: < ...

  8. tf.nn.embedding_lookup TensorFlow embedding_lookup 函数最简单实例

    tf.nn.embedding_lookup TensorFlow embedding_lookup 函数最简单实例 #!/usr/bin/env python # -*- coding: utf-8 ...

  9. Python3学习之路~2.2 简单的购物车程序

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

随机推荐

  1. python基础之字符串讲解(下)

    7.swapspace 这个命令是让大小写翻转 s = 'qwerQ' s3 = s.swapcase() print(s3) 8.title 每个隔开(特殊字符或者数字)的单词首字母大写 s = ' ...

  2. 基于JS的ajax的实现,JSON和JSONP,基于JQuery的ajax的实现

    基于JS的ajax的实现,JSON和JSONP,基于JQuery的ajax的实现1.基于JS的ajax的实现 step1: var xmlhttp = XMLHttprequest() #实例化一个对 ...

  3. flask项目统一捕获异常并自定义异常信息

    背景:      在日常编写了一些flask项目,主要用于测试方面的mock场景,但迭代到后期发现有时候会抛出各种乱七八糟的异常或者直接500且没有任何异常信息,这种情况一般都是某个代码块没有用try ...

  4. 【原创】你的Redis怎么持久化的

    引言 (本文改编自生活真实案例,如有类同,绝不是巧合!) 端午节,烟哥正在一边愉快的学习.... 突然,微信一阵抖动.原来是老刘呼唤烟哥!善良的烟哥本以为人家是要约我出去玩!然而,打开微信一看,出现下 ...

  5. javascript学习总结之函数

    前言 在学习javascript函数的时候,有几个经常很容易混淆的方法,call,apply,bind,caller,callee,这些方法的使用,这些也可以说是会频繁使用的一些方法,在此通过查阅相关 ...

  6. openwrt_在PPPOE上网的同时_访问光猫

    openwrt_在PPPOE上网的同时_访问光猫 转载注明来源: 本文链接 来自osnosn的博客,写于 2019-11-14. 参考文章: 光猫桥接模式下,通过路由器访问光猫.简单设置 设置Open ...

  7. SQLserver还原失败(数据库正在使用,无法获得对数据库的独占访问权)

    问题描述: Sql server还原失败(数据库正在使用,无法获得对数据库的独占访问权) 数据库还原的时候还有其他进程连在上面,导致无法获得独占造成的. 这个问题的原因在于有用户连接了当前要做还原的数 ...

  8. Linux - CentOS 7 安装 .Net Core 运行环境

    阿里云的CentOS 7.7 64位,所需要的环境:MySql 5.7,.Net Core 2.2 ,Nginx 我这里用的 Xshell 工具,首先用root进入系统 版本信息 打开终端输入命令: ...

  9. 线程优先级,设置,setPriority()方法

    package seday08.thread;/** * @author xingsir * 线程优先级 * 线程启动后纳入到线程调度,线程时刻处于被动获取CPU时间片而无法主动获取.我们可以通过调整 ...

  10. QGIS练手 - 数据

    又熬夜了... 这篇博客可能会将QGIS数据管理部分和ArcGIS数据管理进行对比学习. 1. 本地数据文件与数据库(矢量) 1.1 文件 QGIS用的是shp文件.kml文件.geojson文件较多 ...