做工作的时候有一个合理的计划会事半功倍,这就需要我们计算出这个工作前后所需要的预留出的时间,当然具体的结果还是越精细越好。小伙伴会问,python中有这么计算时间精准的模块吗?小编也不卖关子,直接告诉大家,没错就是python3中的时间戳!计算精确到秒的时间就用它。
我们可以计算任意天的x天、y小时、t分钟、z秒后的时间:
# 文件名:count_days.py import time import datetime def time_controller(d=0, hour=0, minute=0, second=0, arg=1, day=datetime.datetime.now()): # 获得某天的x天、y小时、t分钟、z秒后的日期, day为空默认为当前时间开始 # 所有参数默认都为0,只需要调你需要的时间即可 # arg = 1: 获得hour小时,minute分钟,second秒后的具体时间 # arg = -1: 获得hour小时,minute分钟,second秒前的具体时间 now = datetime.datetime.now() if type(day) == str: now = datetime.datetime.strptime(day, '%Y-%m-%d %H:%M:%S') if arg == 1: value = now + datetime.timedelta(days=d, hours=hour, minutes=minute, seconds=second) elif arg == -1: value = now - datetime.timedelta(days=d, hours=hour, minutes=minute, seconds=second) return value print(time_controller(d=10, hour=20, minute=10, second=0, arg=-1, day='2019-08-01 10:00:00')) print(time_controller(d=10, hour=20, minute=10, second=0, arg=-1))
代码里,argv=-1表示取day参数之前的时间,也就是2019-08-01 10:00:00之前10天、20小时、10分钟的时间。同样地,进入cmd(windows)/Terminal(macOS),cd到当前文件夹下,运行命令:
python count_days.py
得到2019-08-01 10:00:00的10天、20小时、10分钟之前的时间为 2019-07-21 13:50:00. 如果day参数为空,默认为当前时间开始,那么这个结果则是:2019-08-01 23:35:23.
由于datetime是精确到毫秒的,所以后面有小数点,大家可以自行去掉!
有想近期给自己做一个计划的小伙伴,不妨试试用python3中的时间戳来解决,小编亲身试验真的好用。更多Python学习推荐:起源地模板网教学中心。
常见问题FAQ
- 免费下载或者VIP会员专享资源能否直接商用?
- 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
- 提示下载完但解压或打开不了?
- 找不到素材资源介绍文章里的示例图片?
- 模板不会安装或需要功能定制以及二次开发?
发表评论
还没有评论,快来抢沙发吧!