本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理

以下文章来源于python数据分析之禅 ,作者鸟哥

前言

双十一还有不到10天,购物车已经快加满了,但是钱包里就这么多钱,如何用现有的钱买到更多喜欢的东西,成为我比较头疼的事,因为我已经被各种组合加法搞晕了

于是我决定用python做个双十一购物攻略,把复杂的计算过程交给电脑解决,自动列出能购买哪些商品,成果如下:

下面给大家详细介绍一下实现过程:

首先将要购买的商品及价格放入表格中:

用pandas读取表格,并将商品名称和价格组合成字典:

import pandas as pd
data=pd.read_excel('商品.xlsx')
goods_price={}
for i,j in zip(list(data['名称']),list(data['原价'])):goods_price[i]=j
goods_price
{'训练短袖': 259,'训练外套': 589,'运动鞋': 389,'跑步鞋': 788,'卫衣': 209,'台灯': 119,'书籍': 246}

计算商品总价和折扣情况并输出

all_price=sum([int(goods_price[good]) for good in list(goods_price.keys())])  #求商品总价格
all_discount=int(all_price/300)
print('全部商品原价总额为{}元'.format(all_price))
print('全部商品可以满减{0}次'.format(all_discount))
print('满减后商品价格总额为{}元'.format(all_price-40*all_discount))   #每满300减40
全部商品原价总额为2599元
全部商品可以满减8次
满减后商品价格总额为2279元

输入购买力

money_max=int(input('请输入购买最大金额:'))
money_min=int(input('请输入购买最小金额:'))

对所有商品进行组合

import itertools
goods1=list(goods_price.keys())
goods2 = []
for i in range(1,len(goods1)+1):iter = itertools.combinations(goods1,i)goods2.append(list(iter))

以商品组合为键,价格为值,创建字典

results={}
for i in goods2:for j in i:sum_price = 0sum_price+=sum([int(goods_price[k]) for k in j])results[j]=sum_price

输出满足条件的满减商品

for i in list(results.keys()):last_price=results[i]-int(results[i]/300)*40if last_price>money_min and last_price<money_max:print('{0:{3}^20}\t{1:{3}^10}\t{2:^10}'.format(' '.join(i), '原价为{}元'.format(results[i]),'满减后价格为{}元'.format(last_price),chr(12288)))

最终的成果如下图:

双十一是不是被各种满减、优惠券绕晕了?那就来做一个购物攻略相关推荐

  1. 天猫乐活季乐活价是什么意思?如何参与天猫乐活价满减优惠券活动?

    天猫乐活季乐活价是什么意思? 天猫乐活季活动时间是从4月13日 20:00 至4月16日24:00,在活动时间内通过天猫商城挑选购买商品,带有乐活季的商品进入购买即可享受跨店满300减30元.优惠券满 ...

  2. 谁说我们会赚不会花?【IT人双十一购物攻略】

    双十一的节日气氛正在中华大地蔓延,人民群众对美好生活的需要与日俱增.与此同时我们也看到,不平衡不充分的发展,还在与之发生矛盾-- 比如,一部分IT人表示:"虽然自己正在加班加点备战双十一,为 ...

  3. 商城购买会员打折满减优惠券商品

    文章目录 前言 一.代码结构 二.UML图 三.代码实现 3.1.domain 3.2.enums 3.3.strategy 3.4.service 3.5.config 四.单元测试 五.模式应用 ...

  4. Python爬虫自动领取满减优惠券,剁手党的福利!

    今天给大家分享一个小网站的数据采集,并写到excel里面! 分析网站 目标网站是"小咪购",这里有天猫所有的含有购物券的商品信息,我们今天就来抓它吧! 随便找一段文字,然后点击右键 ...

  5. 满减优惠用多了,想过怎么运作的吗?

    本文内容逻辑图 本文重点分析电商满减营销产品. 行文逻辑分为三大模块:1.基本概念:2.详细动线分析:3.建议.其中动线分析为重点. 一. 满减营销产品的基本概念 (一)满减产品的类型 满减优惠卷: ...

  6. 电商平台满减活动需求分析

    现如今,随着互联网的深入,各大电商平台也是多如牛毛,那么入职到了电商平台后,对于各种满减活动,该如何测试呢. 今天就给大家说道说道,如果有写得不对的地方,欢迎大家指正. 一: 各大电商网站常用的满减方 ...

  7. 盘点2023天猫淘宝618满减规则和活动时间表

    盘点2023天猫淘宝618满减规则和活动时间表 618年中大促活动转眼就要到了,大家又将迎来一场购物狂欢盛宴.每年天猫淘宝都会推出一系列的优惠满减活动,打算囤货的小伙伴们已经可以着手准备起来了.为了方 ...

  8. 2023年京东618满300减50是全品类吗?满减叠卷怎么用?

    2023年京东618满300减50是全品类吗?满减叠卷怎么用? 京东平台上有着比较多的卖家开店,在对店铺进行运营的过程中,很多卖家都会参与平台的一些活动,这样能够有效的将产品推广出去,对于618大促活 ...

  9. 满100减50 还是满50减20,该如何设置满减优惠?

    诸葛君说:双十一已经过去近半个月了,但有关双十一的讨论还是络绎不绝,记得很早之前的双十一还是没有一丝丝套路,统统五折,而非现在犹如微积分一样晦涩难懂的规则. 满减是在线销售常见的优惠方式,称之为&qu ...

最新文章

  1. 转 linux进程内存到底怎么看 剖析top命令显示的VIRT RES SHR值
  2. Unity3D+VR的实现
  3. 【创业】史上最完整创业数据,30岁以下创业白皮书
  4. 华为电脑c语言总是错误,关于华为机试题求代码!解决方法
  5. 享元设计模式coding
  6. 把老赵的页面缓存片断改一下,呵呵
  7. python 嵌套数组_兴趣是最好的老师,快速入门:十分钟学会python
  8. matlab 贝叶斯工具箱,matlab的BNT贝叶斯工具箱错误求教
  9. 还以为iPhone安全?多款iOS应用被曝“偷偷”发送用户数据
  10. 深度学习涉及到的线性代数知识点总结(二)
  11. 电源管理模块设计 - 线性电源和开关电源的区别
  12. 函数式编程(lambda表达式)
  13. mysql修改表的内容_sql怎么修改表内容
  14. 饥荒控制台输入没用_饥荒控制台使用教程
  15. vos3000如何检查落地网关配置正常,路由分析
  16. 如何把一张照片的像素提高_能够充分提高照片像素的方法!
  17. C#合并单元格,AddMergedRegion
  18. 小提琴和钢琴一起学行吗_小提琴和钢琴存在一种羁绊
  19. 视频教程-【吴刚】iOS原生图标设计原理与绘制技巧标准教程-UI
  20. libjpeg安装和使用

热门文章

  1. 如何用CSS制作可以转动的魔方
  2. 【记录】ubuntu wifi 图标消失,无法连接无线网,查询无线网卡型号安装驱动
  3. 青岛计算机考研的学校,2015年计算机考研学校排名
  4. sql_递归sql_explan详情
  5. php按列导出excel2010,excel2010官方下载 免费完整版 PHP导出MySQL数据到Excel文件fputcsv...
  6. css 剪辑图片_CSS 截取图片只显示部分图片
  7. MIT透过机器学习技术用胺基酸预测蛋白质结构
  8. unity3d游戏暂停
  9. 8个免费高速文件传输工具,让你彻底告别网盘和数据线
  10. 轩辕剑五的乱码问题解决