python中时间对象生成及时间格式的转换

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python中时间对象生成及时间格式的转换相关的知识,希望对你有一定的参考价值。

1.将字符串的时间转换为时间戳
    方法:
        a = "2013-10-10 23:40:00"
        将其转换为时间数组
        import time
        timeArray = time.strptime(a, "%Y-%m-%d %H:%M:%S")
    转换为时间戳:
    timeStamp = int(time.mktime(timeArray))
    timeStamp == 1381419600
2.字符串格式更改
    如a = "2013-10-10 23:40:00",想改为 a = "2013/10/10 23:40:00"
    方法:先转换为时间数组,然后转换为其他格式
    timeArray = time.strptime(a, "%Y-%m-%d %H:%M:%S")
    otherStyleTime = time.strftime("%Y/%m/%d %H:%M:%S", timeArray)
 
 
3.时间戳转换为指定格式日期:
    方法一:
        利用localtime()转换为时间数组,然后格式化为需要的格式,如
        timeStamp = 1381419600
        timeArray = time.localtime(timeStamp)
        otherStyleTime = time.strftime("%Y-%m-%d %H:%M:%S", timeArray)
        otherStyletime == "2013-10-10 23:40:00"
 
    方法二:
        import datetime
        timeStamp = 1381419600
        dateArray = datetime.datetime.utcfromtimestamp(timeStamp)
        otherStyleTime = dateArray.strftime("%Y-%m-%d %H:%M:%S")
        otherStyletime == "2013-10-10 23:40:00"
 
4.获取当前时间并转换为指定日期格式
    方法一:
        import time
        获得当前时间时间戳
        now = int(time.time())  ->这是时间戳
        转换为其他日期格式,如:"%Y-%m-%d %H:%M:%S"
        timeArray = time.localtime(timeStamp)
        otherStyleTime = time.strftime("%Y-%m-%d %H:%M:%S", timeArray)
 
    方法二:
        import datetime
        获得当前时间
        now = datetime.datetime.now()  ->这是时间数组格式
        转换为指定的格式:
        otherStyleTime = now.strftime("%Y-%m-%d %H:%M:%S")
 
5.获得三天前的时间
    方法:
        import time
        import datetime
        先获得时间数组格式的日期
        threeDayAgo = (datetime.datetime.now() - datetime.timedelta(days = 3))
        转换为时间戳:
            timeStamp = int(time.mktime(threeDayAgo.timetuple()))
        转换为其他字符串格式:
            otherStyleTime = threeDayAgo.strftime("%Y-%m-%d %H:%M:%S")
    注:timedelta()的参数有:days,hours,seconds,microseconds
 
6.给定时间戳,计算该时间的几天前时间:
    timeStamp = 1381419600
    先转换为datetime
    import datetime
    import time
    dateArray = datetime.datetime.utcfromtimestamp(timeStamp)
    threeDayAgo = dateArray - datetime.timedelta(days = 3)
    参考5,可以转换为其他的任意格式了

 

 %a  英文星期的简写 Mon
 %A  英文星期的完整编写 Monday
 %b  英文月份的简写 Jun
 %B  英文月份的完整编写 June
 %c  显示本地的日期和时间 06/30/14 01:03:17
 %I  小时数,取值在01~12之间 01
 %j  显示从本年第一天开始到当天的天数 181
 %w   (week)  显示今天是星期几,0表示星期天 1
 %W  显示当天属于本年的第几周,星期一作为一周的第一天进行计算 26  ==> 26*7 = 182天
 %x  本地的当天日期 06/30/14
 %X  本地的当天时间 01:09:54
 %y  年份,取值在00~99之间 14
%Y 年份完整的拼写 2014
%m   (month) 月份,取值在01~12之间 06
%d    (day) 日期数,取值在1~31之间  30
%H   (Hour)  小时数,取值在00~23之间 01
%M   (Minute) 分钟数,取值在01~59之间 04
%S 58

以上是关于python中时间对象生成及时间格式的转换的主要内容,如果未能解决你的问题,请参考以下文章

python中时间序列数据的一些处理方式

python中时间操作总结

关于在delphi中时间日期的转换问题,高手进

JSON中时间对象的输出格式是怎么定义的

JS中时间格式转换

中时间格式为 24 小时制