不管何時何地,只要我們編程時遇到了跟時間有關(guān)的問題,都要想到 datetime 和 time 標(biāo)準(zhǔn)庫模塊,今天我們就用它內(nèi)部的方法,詳解python操作日期和時間的方法。
1.將字符串的時間轉(zhuǎn)換為時間戳
代碼如下:方法:
a = "2013-10-10 23:40:00"
#將其轉(zhuǎn)換為時間數(shù)組
import time
timeArray = time.strptime(a, "%Y-%m-%d %H:%M:%S")
#轉(zhuǎn)換為時間戳:
timeStamp = int(time.mktime(timeArray))
timeStamp == 1381419600
2.格式更改
如a = "2013-10-10 23:40:00",想改為 a = "2013/10/10 23:40:00"
方法:先轉(zhuǎn)換為時間數(shù)組,然后轉(zhuǎn)換為其他格式
代碼如下:timeArray = time.strptime(a, "%Y-%m-%d %H:%M:%S")
otherStyleTime = time.strftime("%Y/%m/%d %H:%M:%S", timeArray)
3.時間戳轉(zhuǎn)換為指定格式日期
方法一:利用localtime()轉(zhuǎn)換為時間數(shù)組,然后格式化為需要的格式,如:
代碼如下: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.獲取當(dāng)前時間并轉(zhuǎn)換為指定日期格式
方法一:
代碼如下:import time
#獲得當(dāng)前時間時間戳
now = int(time.time()) ->這是時間戳
#轉(zhuǎn)換為其他日期格式,如:"%Y-%m-%d %H:%M:%S"
timeArray = time.localtime(timeStamp)
otherStyleTime = time.strftime("%Y-%m-%d %H:%M:%S", timeArray)
方法二:
代碼如下:import datetime
#獲得當(dāng)前時間
now = datetime.datetime.now() ->這是時間數(shù)組格式
#轉(zhuǎn)換為指定的格式:
otherStyleTime = now.strftime("%Y-%m-%d %H:%M:%S")
5.獲得三天前的時間的方法
代碼如下:import time
import datetime
#先獲得時間數(shù)組格式的日期
threeDayAgo = (datetime.datetime.now() - datetime.timedelta(days = 3))
#轉(zhuǎn)換為時間戳:
timeStamp = int(time.mktime(threeDayAgo.timetuple()))
#轉(zhuǎn)換為其他字符串格式:
otherStyleTime = threeDayAgo.strftime("%Y-%m-%d %H:%M:%S")
注:timedelta()的參數(shù)有:days,hours,seconds,microseconds
6.給定時間戳,計算該時間的幾天前時間
代碼如下:timeStamp = 1381419600
#先轉(zhuǎn)換為datetime
import datetime
import time
dateArray = datetime.datetime.utcfromtimestamp(timeStamp)
threeDayAgo = dateArray - datetime.timedelta(days = 3)
#參考5,可以轉(zhuǎn)換為其他的任意格式了
7、用Python計算昨天和明天的日期
代碼如下:>>> import datetime #導(dǎo)入日期時間模塊
>>> today = datetime.date.today() #獲得今天的日期
>>> print today #輸出今天日期
2014-01-04
>>> yesterday = today - datetime.timedelta(days=1) #用今天日期減掉時間差,參數(shù)為1天,獲得昨天的日期
新聞熱點
疑難解答
圖片精選