关于类似朋友圈的发布时间间隔计算问题(python)
2017-08-11 18:25
645 查看
今天接触到要做一个类似朋友圈的那种消息的显示页面,刚开始我有点对底下那个时间的显示,就是什么几分钟前,几天前,几小时前什么的,这玩意需要计算才能得到啊,可是咋整呢?我思考了一段时间,算了,不扯了,直接上代码。
首先呢,我先分享下我的思路,a后面的那个不要在意,只是获取到的朋友圈的发布时间,由于数据库中的发布时间是个datetime类型,所以要通过mktime处理那么一小下下,t为获取到的当前时间,这个样子就能获取到它们两个之间的差值,也就是时间差。
接下来的计算过程刚开始我想到写月和年,毕竟也有几个月前或是几年前发的动态,那么问题来了,一个月的天数是不一样的,我怎么样判断它过了一个月,没有月又怎么判断年? 然后咋办,我狂翻了朋友圈,花了10分钟左右终于翻到了63天前的动态,然后····就没有然后了,它不让我继续翻了,估计朋友圈阅览的条数是有上限的。然后我就知道了呗,微信朋友圈中就没有月这个概念,最起码在这64天,也就是三个月左右的时间段内并没有细分到月这个单位。得知这个,前辈让我细化到周,毕竟一周固定有7天嘛,然后就有了上面的代码。
稍稍浪费那么一丢丢的脑细胞就能看懂这条代码,60秒,60分,24小时,7天,根据这几个变量比较那么一小下下就可以进行判断了,然后就大功告成了,做成json格式传回前端就好了,收工收工~
a = str(m.Zmess.create_at) tt = time.mktime(time.strptime(a, '%Y-%m-%d %H:%M:%S')) t = time.time() b = int(t - tt) print(b) c = 60 d = 60 * c e = 24 * d f = 7 * e if c > b : po['post_at'] = "刚刚" elif d > b : po['post_at'] = str(int(math.floor(b / c))) + "分钟前" elif e > b: po['post_at'] = str(int(math.floor(b / d))) + "小时前" elif f > b: po['post_at'] = str(int(math.floor(b / e))) + "天前" else : po['post_at'] = str(int(math.floor(b / f))) + "周前"
首先呢,我先分享下我的思路,a后面的那个不要在意,只是获取到的朋友圈的发布时间,由于数据库中的发布时间是个datetime类型,所以要通过mktime处理那么一小下下,t为获取到的当前时间,这个样子就能获取到它们两个之间的差值,也就是时间差。
接下来的计算过程刚开始我想到写月和年,毕竟也有几个月前或是几年前发的动态,那么问题来了,一个月的天数是不一样的,我怎么样判断它过了一个月,没有月又怎么判断年? 然后咋办,我狂翻了朋友圈,花了10分钟左右终于翻到了63天前的动态,然后····就没有然后了,它不让我继续翻了,估计朋友圈阅览的条数是有上限的。然后我就知道了呗,微信朋友圈中就没有月这个概念,最起码在这64天,也就是三个月左右的时间段内并没有细分到月这个单位。得知这个,前辈让我细化到周,毕竟一周固定有7天嘛,然后就有了上面的代码。
稍稍浪费那么一丢丢的脑细胞就能看懂这条代码,60秒,60分,24小时,7天,根据这几个变量比较那么一小下下就可以进行判断了,然后就大功告成了,做成json格式传回前端就好了,收工收工~
相关文章推荐
- python 中关于时间间隔问题
- Python中时间类解决类似朋友圈时间显示的小问题
- python中关于时间和日期函数的常用计算总结
- zf-关于通知公告如果发布的是无限制时间的,那么默认隐藏时间输入框的问题
- Android记录19-朋友圈动态发布时间计算
- python的N个小功能(文本字段对应数值,经纬度计算距离,两个时间点计算时间间隔)
- 关于ASIHTTPRequest连续请求,并发连续,间隔时间很小崩溃问题
- python中关于时间和日期函数的常用计算总结(time和datatime)
- 【selenium】python+selenium+unittest,关于每次执行完一个测试用例都关闭浏览器等时间较长的问题之解决方案
- 在论坛中出现的比较难的sql问题:35(时间间隔计算问题)
- 朋友圈动态发布时间计算
- 用Python写的计算两个日期时间间隔的脚本
- 关于python处理作Excel文件的一些问题,包括时间处理 (转)
- 有意思的关于sqlserver时间的取值和计算问题
- Android记录19-朋友圈动态发布时间计算
- 关于JS下拉列表选择时间计算时间周期的问题解决
- python计算时间间隔(精确到微妙)
- python中关于时间和日期函数的常用计算总结(time和datatime)
- 关于SetTimer间隔小于OmTimer执行时间的问题
- python中关于时间和日期函数的常用计算