0
点赞
收藏
分享

微信扫一扫

听Python说:你的暑假余额已不足!

一点读书 2022-03-15 阅读 36


转眼八月上旬就过去了 暑期就像欠费了一样 

而暑假作业比闷热天还难过 让人手足无措听Python说:你的暑假余额已不足!_时间戳

听Python说:你的暑假余额已不足!_python_02

莫慌!是时候盘算下怎么写完作业 

多少天能写完作业 一天写多少 

一个有计划的人 会很顺利完成的样子~

听Python说:你的暑假余额已不足!_python_03

首先我们要知道的是----距离开学 

我们还有多少日子可以耍~ 

数数小指头??

听Python说:你的暑假余额已不足!_python_04


NO!!

作为一个日常爱学(zhuang)习(B)的技能公众号,我早已准备好一套动动手指而不是数数手指计算时间的方法听Python说:你的暑假余额已不足!_时间戳_05

接下来,我就教大家怎么用十行代码计算我们剩余的假期天数!我们的代码用到了一个概念叫时间戳:

时间戳就是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数

因此,2019年8月1日的时间戳,就是从1970年01月01日08时00分00秒到2019年8月1日00时00分的秒数,我们可以先用工具(https://tool.chinaz.com/Tools/unixtime.aspx)计算一下这个秒数:

听Python说:你的暑假余额已不足!_python_06

今天我们就基于时间戳,计算一下我们剩余的假期天数吧!

听Python说:你的暑假余额已不足!_时间间隔_07


首先,我们需要把类似2019-09-01这样的yyyy-mm-dd格式的时间转化为时间戳,这样做就可以:

time.mktime(time.strptime(start_date,'%Y-%m-%d'))

strptime是将yyyy-mm-dd这样的字符串转化为time类型的变量,然后time.mktime()函数可以将time类型的变量转化为时间戳。

将两个日期的时间戳相减,就能得到这两个时间之间的秒数,然后将其除以24小时*60分钟*60秒就能得到这两个时间间隔的​天数

work_days = int((end_sec - start_sec)/(24*60*60))

除以60分钟*60秒就能得到这两个时间间隔的​小时数

work_hours = int((end_sec - start_sec)/(60*60))

除以60秒就能得到这两个时间间隔的​分钟数

work_minutes= int((end_sec - start_sec)/(60))

让我们尝试一下,进入cmd(windows)/Terminal(macOS),cd到当前文件夹下,运行命令:python count_days.py听Python说:你的暑假余额已不足!_时间戳_08运行结果

可以看到,从2019年8月12日到2019年9月1日,还剩余20天,正好和我们数手指头算出来的时间是一样的听Python说:你的暑假余额已不足!_时间间隔_09

但是!天呐,我们的大家的暑假只剩下20天,换算成小时,就是480个小时!作业做了吗?听Python说:你的暑假余额已不足!_python_10

你可以将start_date修改成你想要的任意时间进行计算哦,并不一定是今天。只要格式符合yyyy-mm-dd即可。

怎么样,方便吧?嘻嘻,接下来还有更方便的玩法,我们可以计算任意天的x天、y小时、t分钟、z秒后的时间:

听Python说:你的暑假余额已不足!_python_11


代码里,argv=-1表示取day参数之前的时间,也就是2019-08-01 10:00:00之前10天、20小时、10分钟的时间。同样地,进入cmd(windows)/Terminal(macOS),cd到当前文件夹下,运行命令:python count_days.py听Python说:你的暑假余额已不足!_时间戳_12

运行结果

得到2019-08-01 10:00:00的10天、20小时、10分钟之前的时间为 2019-07-21 13:50:00. 如果day参数为空,默认为当前时间开始,那么这个结果则是:2019-08-01 23:35:23.

由于datetime是精确到毫秒的,所以后面有小数点,大家可以自行去掉听Python说:你的暑假余额已不足!_时间戳_13

今天小技巧不仅简单,而且在实际生活中也非常方便实用。用上面的方法可做未来的计划安排,考试倒计时准备,也可以算算离上次某个时间点(节假日)过去了多久,我们一起认识了多长时间,在一起了多少天,想想就激动听Python说:你的暑假余额已不足!_时间戳_14当然还有更多有趣的用法待大家去挖掘哦!

Python实用宝典 (pythondict.com)

不只是一个宝典

听Python说:你的暑假余额已不足!_python_15


举报

相关推荐

0 条评论