• 技术文章 >Python技术 >Python基础教程

    Python3时间戳如何应用于数学计算?

    小妮浅浅小妮浅浅2020-11-17 14:16:37原创1850

    做工作的时候有一个合理的计划会事半功倍,这就需要我们计算出这个工作前后所需要的预留出的时间,当然具体的结果还是越精细越好。小伙伴会问,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学习推荐:PyThon学习网教学中心

    专题推荐:python3时间戳
    上一篇:datetime在python3时间中的特殊使用有哪些? 下一篇:python3中有计算时间差的方法吗?

    相关文章推荐

    • python时间戳怎么处理• python时间戳是啥意思?

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网