• Python-时间模块


    一、time模块

    先介绍一下要用到的几种时间表示方法。

    (1)时间戳:指的是从unix元年到现在过了多少秒,如下图运行结果的第

    (2)时间元组:下图中,最后2行的命令,输出的就是时间元组格式。

    (3)自己格式化好的时间,也就是下图运行结果的第二条,可以自己定义时间的显示格式。

    常用的如下:

     

    时间戳和格式化好的时间相互转换,需要一个桥梁,就是时间元组。

    例1:把时间戳转化成格式化好的时间,显示的格式为:年-月-日 时:分:秒。

    分析:第一步应该把时间戳转化为时间元组,也就是使用time.localtime()。第二步,把时间元组转化为格式化好的时间,也就是使用time.strftime()

    import time
    def timestamp_to_format(timestamp = None,format = '%Y-%m-%d %H:%M:%S'):
        # 1、默认返回当前格式化好的时间
        # 2、转入时间戳的话,把时间戳转化为格式化好的时间,返回
        if timestamp:
            time_tuple = time.localtime(timestamp)
            res = time.strftime(format,time_tuple)
        else:
            res = time.strftime(format)#默认取当前时间
        return res
    
    result = timestamp_to_format()
    print(result)

    例2:把格式化好的时间转化为时间戳。

    分析:先把格式化好的时间转化为时间元组,再把时间元组转化为时间戳。

    import time
    def strToTimestamp(str=None,format='%Y%m%d%H%M%S'):
        if str: #如果传了时间的话
            tp = time.strptime(str,format) #格式化好的时间,转成时间元组
            res = time.mktime(tp)#再转成时间戳
        else:
            res = time.time()  #默认取当前的时间戳
        return int(res)
    
    result = strToTimestamp(str= '2018-5-3 19:47:32',format='%Y-%m-%d %H:%M:%S')
    print(result)

    二、datetime模块

    运行结果为:

    其中,datetime.timedelta()括号里可选的有weeks,days,minutes,seconds,如:

  • 相关阅读:
    CentOS 6.5 安装 VNC Server
    vs2008出错
    MySQL 尽量避免使用 TIMESTAMP
    excel中生成32位随机id
    库存扣减和锁
    精通 MySQL 索引
    Java代码性能优化
    RocketMQ 消息丢失场景分析及如何解决
    Java 8 的内存结构
    Spring Boot + MyBatis + MySQL 实现读写分离
  • 原文地址:https://www.cnblogs.com/zhxwind/p/8986973.html
Copyright © 2020-2023  润新知