Python常用时间函数


常用的时间函数如下

获取当前日期:time.time()

获取元组形式的时间戳:time.local(time.time())

格式化日期的函数(基于元组的形式进行格式化):

(1)time.asctime(time.local(time.time()))

import time

#最简单的获取可读的时间模式的函数是asctime():
localtime = time.asctime( time.localtime(time.time()) )
print ("本地时间为 :", localtime)
#本地时间为 : Thu Apr  7 10:29:13 2016

(2)time.strftime(format[,t])  格式化日期

#---strftime 方法来格式化日期
import time

# 格式化成2016-03-20 11:45:39形式
print (time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()))

# 格式化成Sat Mar 28 22:24:24 2016形式
print (time.strftime("%a %b %d %H:%M:%S %Y", time.localtime()))
  
# 将格式字符串转换为时间戳
a = "Sat Mar 28 22:24:24 2016"
print (time.mktime(time.strptime(a,"%a %b %d %H:%M:%S %Y")))

'''
2016-04-07 10:29:46
Thu Apr 07 10:29:46 2016
1459175064.0

'''

(3)time.strptime(str,fmt='%a %b %d %H:%M:%S %Y')
根据fmt的格式把一个时间字符串解析为时间元组

 import time
struct_time = time.strptime("30 Nov 00", "%d %b %y")
print ("返回元组: ", struct_time)
#返回元组:  time.struct_time(tm_year=2000, tm_mon=11, tm_mday=30, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=335, tm_isdst=-1)

将格式字符串转换为时间戳:

time.strptime(str,fmt='%a %b %d %H:%M:%S %Y')

(4)time.mktime(tupletime)
接受时间元组并返回时间辍(1970纪元后经过的浮点秒数)

# 将格式字符串转换为时间戳
a = "Sat Mar 28 22:24:24 2016"
print(time.mktime(time.strptime(a,"%a %b %d %H:%M:%S %Y")))
#1459175064.0

延迟执行:time.sleep([secs]),单位为秒

例一:

import time

print(time.time())#当前时间
    #1525245495.8187146

print(time.localtime())
print(time.localtime(time.time()))#与上一句等价
    #简单可读形式
    #time.struct_time(tm_year=2018, tm_mon=5, tm_mday=2, tm_hour=15, tm_min=18, tm_sec=15, tm_wday=2, tm_yday=122, tm_isdst=0)

print(time.asctime( time.localtime(time.time())))
# 格式化成 Wed May  2 15:18:15 2018形式
#Wed May  2 15:18:15 2018

print(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())) 
# 格式化成2018-05-02 15:18:15形式

print(time.strftime("%a %b %d %H:%M:%S %Y", time.localtime())) 
# Wed May 02 15:18:15 2018

a = "Sat Mar 28 22:24:24 2016"
print(time.mktime(time.strptime(a,"%a %b %d %H:%M:%S %Y")))

例子二,计算时间间隔:

def calc_time(timeStr):
    #timeStr = '2017-3-7 23:59:00'  时间格式
    timeArray = time.strptime(timeStr, "%Y-%m-%d %H:%M:%S")
            #strptime 方法可以将一个时间字符串转成 struct_time
    timestamp = time.mktime(timeArray)
            #用 mktime 转成 时间戳
    return int(timestamp-time.time())

未完待续......


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM