python商品会员打折_Python微项目分享之双十一优惠计算器

作者:JiawuZhang

出品:JiawuLab(ID:jiawulab)微项目系列是JiawuLab原创栏目,每期选取一个自创项目或发现有趣的项目,进行代码、逻辑分析,达到python学习目的。

大家好,我是JiawuZhang,本期微项目是——双十一优惠计算器。

上期分享的微项目——情话多说一点,您看过吗?如果感兴趣,传送门:JiawuZhang:Python微项目分享之情话多说一点​zhuanlan.zhihu.comv2-640bfbff057ba0b69cb14b3fb43f90bb_180x120.jpg

项目介绍

今天晚上就是双十一啦,真是一个激动人心的时刻。

但是最近很多人都很苦恼,都在做着计算工作。

比如,网络上流传这些图:

光手写,再用计算器,都得弄半天啊。

我家的那位也不例外,算一遍不行,再算一遍,夸张点说,计算器都快按坏两个了。

什么参加活动的满400-50,不参加活动的只有店铺活动,

什么凌晨一点前拍满400-50,后面又变化

还有定金的算一部分,抢购的另算一部分

还要统计用几张优惠券。。。听完这些,我头也快晕了。

与其这么复杂,还不如只统计满400-50的有多少,需要多少优惠券呢

于是,我就用python写了个小程序,来做这个事。

先放出动图,大家看看:

分析过程

首先我们要定义四个分类,'服饰鞋帽'、'食品日用'、 '宝宝用品'、 '其他'

然后对每个分类进行循环输入

最后系统统计出结果,直接就能看到需要多少张优惠券,如下图所示

码代码

过程分析后,我们来分步进行

1、定义区

# 分类categories

categories = ['服饰鞋帽', '食品日用', '宝宝用品', '其他']

# 定义字典

data = {i: 0 for i in categories}

# 定义总计变量

total = 0

2、某个分类循环输入

str = '请选择需要输入哪个分类?\n1、服饰鞋帽 2、食品日用 3、宝宝用品 4、其他\n请填入数字1-4 >>>'

choice = int(input(str))

cate = categories[choice - 1]

while True:

money = input(f'{cate}分类:请直接输入商品金额,或回复"n"退出:')

if money == "n":

print(f'退出 {cate}分类\n')

break

else:

data[cate] += float(money)

3、最后的统计代码

for da in data:

print('%s 分类花费金额为:%.2f元' % (da, data[da]))

total += data[da]

print('\n总共需要花费:%.2f元' % total)

x = int(total/400)

print(f'可用%i张优惠券\n优惠金额为:%i元' % (x, x*50))

print(f'实际花费:%.2f元' % (total-x*50))

代码解释一下:

"data"字典是为了将各分类的金额做统计,方便后面计算,

“{i: 0 for i in categories}” 这是一种简洁的写法,相当于:

data = {}

for i in categories:

data[i] = 0

后面的代码都比较简单,如果你发现看不懂的,可以给我留言。

完整代码

上面分步骤解释过了,现在放上完整版的代码,如下:

# coding=utf-8

# filename: 1111.py

categories = ['服饰鞋帽', '食品日用', '宝宝用品', '其他']

data = {i: 0 for i in categories}

total = 0

print('欢迎来到双十一优惠统计系统!\n')

while True:

choice = int(input('请选择需要输入哪个分类?\n1、服饰鞋帽 2、食品日用 3、宝宝用品 4、其他\n请填入数字1-4 >>>'))

cate = categories[choice - 1]

while True:

money = input(f'{cate}分类:请直接输入商品金额,或回复"n"退出:')

if money == "n":

print(f'退出 {cate}分类\n')

break

else:

data[cate] += float(money)

cx = input('还需要填写其他分类吗?直接回车键继续,或者回复"n"退出:')

if cx == 'n':

print('退出输入系统')

break

print('\n经过电脑分析,结果如下:')

for da in data:

print('%s 分类花费金额为:%.2f元' % (da, data[da]))

total += data[da]

print('\n总共需要花费:%.2f元' % total)

x = int(total/400)

print(f'可用%i张优惠券\n优惠金额为:%i元' % (x, x*50))

print(f'实际花费:%.2f元' % (total-x*50))

是不是很简单,因为是临时给老婆写的程序,并没有做成函数方式

功能也很简单,你可以改下代码,让程序更符合你的想法,源代码直接复制下来就能运行了。

祝愿大家在双十一都能满载而归,用最合理的优惠,买到最多的东西。

本次的微项目——双十一优惠计算器——分享结束。如果您喜欢这期文章,请麻烦点赞,支持一下。

欢迎您关注公众号:JiawuLab,或者给我留言,说说你遇到的问题,我们一起探讨。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值