首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python微项目分享之养老倒计时

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

作者:JiawuZhang

出品:JiawuLab(公众号ID:jiawulab)

大家好,我是JiawuZhang,本期微项目是——养老倒计时。

上期分享的微项目——爱情明信片,您看过吗?如果感兴趣,传送门:Python微项目分享之爱情明信片

我们对这个小项目升级,通过代码改造后,从文字版变成图文版,整个体验也上升不少。

同时因为这个升级项目,还学到了一个新知识——图像处理库PIL,这是一个很强大的库,比如网络上做动态二维码的MYQR库的底层也是调用的PIL来实现图片处理的,我们还能利用这个库做很多好玩的事情。

项目介绍

最近刷问答,看到有一个提问关注度很高——明年养老金涨的比例是多少?什么时候能领到涨的养老金呢?

咳咳,这个问题,对于我来说好像有点遥远啊。相信阅读这篇文章的大部分朋友也是一样。

从一些回答可以看出:我国的养老金已经实现了连续15年的上涨,明年也就是2020年的上涨也是大概率事件。

哇,好羡慕啊,这个时候再看看自己的工资条,嗯。好希望也能有这样的上涨趋势。

不禁就想到了,还有多久自己开始领养老金,享受国家的待遇啊〜(二哈,醒醒〜)

双十一前一天,我分享过一个事件倒计时的小项目,从后台数据看到,有不少的新朋友阅读,先在此谢谢大家。

我打算将这个项目进行升级,再加上前一期所用到的PIL图片库,让整个项目更饱满。

于是就有这期项目——养老倒计时功能。

项目分析

1、倒计时计算 利用原先事件倒计时项目的部分代码,做一个从现在到退休的时间计算。

我初步的想法是,输入现在的年纪,然后根据法定60岁的退休年龄,(女性同胞是50岁),计算出差值。

有个问题,直接输入年纪或是生日信息,这都是太隐私的事情,不方便程序的普适性,

比如你能让一位女性输入自己的真实年龄吗?又或是谁会轻易输入自己的生日呢?

所以决定,用户输入一个退休时间,然后通过代码计算出还剩多长时间就可以了。

2、生成图片 使用图像处理PIL库,将相应的信息画在图片上,然后写上合适的文字。

所以需要找一些图片,大家都知道网上用图片都是要钱的,我只能找一些免费的图片做样式啦。

然后利用上期介绍的爱情明信片的部分代码,来完成文字信息的填写。

码代码

上面分析完成,又到了码代码的时间。

首先,原来的事件倒计时的代码,有哪些可用的呢?我发现“count(event, endtime)”函数是能用的。

不过这部分代码中,循环目的是闪动显示,而这次我们只需要得到相应的数值就可以了,所以需要去掉循环。

然后时间计算部分都需要调整,我们只需要知道多少天就可以了。

最后代码调整为:

这里加了判断,目的是当用户输入早于今天的日期时,不要输出一个负值,这里的"day"可以为负值的。

获得剩余时间后,我们就来在图片上做处理,我们在上期代码的基础上做一些修改就好了。

先将图片放于“retire”文件夹中,然后给“retirepic”函数传进剩余时间的参数,整个代码就能执行了。

来看看我用代码生成的两张图片:

是不是很像那么回事。(二哈〜)

你也可以按照自己的想法来改造代码,做出更多不同的玩法,是不是很趣呢。

同时我也将这个功能上线到公众号了,只要输入“养老倒计时+退休时间”就能获得指定的图片啦。如下图:

细心的朋友,应该能看到图片的左上角会有一个编码,这个是我根据数据库的功能,搭建的会员体系,每位朋友都有指定的编码,无论背景怎么换,编码都是一致的。

这段时间做了很多微项目的分享,主要的目的是为了让大家对python的基础运用更熟悉一些,也能通过一些小项目锻炼处理问题的思维。

公众号运营了一段时间,虽然经常会把一些小项目做成互动的功能,但是还是觉得少了点什么。

比如上期的爱情明信片,这期的养老倒计时,都是玩一会儿,就没有继续下去的动力了。

而市面上最常见的维系粉丝活跃度的功能——签到积分体系。是一个很系统的,小巧的功能。

我将会在后面一段时间,利用python来搭建我自己的签到积分系统,并且将每一步的思考及操作都分享出来。

所以大家都能看到新的实验系列文章啦,敬请期待〜

本次的微项目——养老倒计时——分享结束。如果您喜欢这期文章,请麻烦点个赞,支持一下。

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

(项目源代码已上传到公众号,回复“养老源代码”可获取。)

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20191120A0AAPN00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券