一. datetime
Python中處理時間最重要的一個Module就是datetime
引用:import datetime
常用的類:
- datetime.date: 代表日期(year, month, day)
- datetime.time: 代表一天內時間(hour, minute, second, microsecond)
- datetime.datetime: 代表完整的時間,也就是上面說的date + time(year, month, day, hour, minute, second, microsecond)
- datetime.timedelta:代表一段時間差,支持時間維度的運算(支持和date, datetime加減運算)
- datetime.tzinfo:處理和時區相關,是一個abstract class,使用時必須繼承實現
-
datetime常見用法:
- 獲取今天0點的日期:datetime.date.today()
- 獲取昨天0點的日期:datetime.date.today() - datetime.timedelta(days=1)
- 獲取當前時間:datetime.datetime.today()
- 獲取昨天當前時間:datetime.datetime.today - datetime.timedelta(days=1)
二. time
提供類似C語言中time.h提供的接口,提供了一個與時間相關的工具
引用:import time
常用形式:
-
UNIX timestamp: 時間戳(相對于1970.1.1:00:00:00的秒數)
struct_time:- tm_year: 年份,例如2014
- tm_mon: 月份,range [1, 12]
- tm_mday: 天,range [1, 31]
- tm_hour: 小時,range [0, 23]
- tm_min: 分鐘,range [0, 59]
- tm_sec: 秒,range [0, 61] -> 為啥是61秒?官方說手冊的解釋:The range really is 0 to 61; this accounts for leap seconds and the (very rare) double leap seconds. leap second是閏秒的意思,絕大多數情況都是59秒,詳見http://zh.wikipedia.org/wiki/%E9%97%B0%E7%A7%92
- tm_wday: 星期幾,range [0, 6] 星期一是0
- tm_yday, 一年當中第幾天,range [1, 366]
- tm_isdst, 夏令時, 0, 1, -1
三. 相互轉換
- datetime -> time.struct_time
-
datetime.datetime.timetuple()
datetime.date.timetuple() -
time.struct_time -> timestamp
time.mktime(struct_time) - timestamp -> datetime.datetime
-
datetime.datetime.fromtimestamp(timestamp)
datetime.datetime.utcfromtimestamp(timestamp)
datetime.datetime -> string
datetime.datetime.strptime() -
string -> datetime.datetime
datetime_obj.strftime()
time.struct_time -> string
time.strptime() string -> time.struct_time
time.strftime()
四. 常見例子
- datetime.datetime.today().strftime("%Y-%m-%d %H:%M:%S") -> “2016-06-20 15:34:45”
- 獲取今天0點0分時間戳:datetime.date.today().strftime("%s”)
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
