前言:
Python中對時間進行處理的常用模塊有兩個:time和datetime!
兩者有什么區(qū)別?
可以這么認為,datetime是time的豪華加強版,但datetime不是time的進一步封裝,同時datetime比time更具平臺普適性!
calendar類是處理日歷的,就是像墻上掛著的月歷那樣的格式,這里不說了,目前用的比較少!
一.time模塊中時間有哪三種形式?
1. 時間戳:1502186697.249147
time中有哪幾種方法能得到?
兩種
import time
time.time() #返回的是現(xiàn)在這個時間的時間戳
time.mktime(struct_time) # 返回的是struct_time這個時間元組所代表的時間戳 ,必須帶參數(shù)
2. 時間元組:time.struct_time(tm_year=2017, tm_mon=8, tm_mday=8, tm_hour=18, tm_min=4, tm_sec=57, tm_wday=1, tm_yday=220, tm_isdst=0)
time中有哪幾種方法能得到?
三種
import time
time.localtime(secs) # 常用! 返回的是secs這個時間戳代表的本地(東八區(qū))時間元組
time.gmtime(secs) # 返回的是secs這個時間戳的utc時間元組(與本地少8個小時)
time.strptime(time_string, format) #將time_string這個時間字符串轉換為時間元組
前兩個方法若不帶參數(shù),則默認的參數(shù)就是此時這個時間度的時間戳
strptime()方法中的format是時間格式,在這個方法中必須強制按照time_string提供的格式來,來告訴time模塊要轉換的時間字符串是什么樣的格式,以便轉換
3. 時間字符串:2017-08-08 18:04:57 Tuesday
time中有哪幾種方法能得到?
三種
time.ctime(secs) # 返回的是secs這個時間戳代表的時間字符串,字符串格式是固定的
time.asctime(struct_time) # 返回的是struct_time這個時間元組代表的時間字符串,字符串格式固定
time.strftime(format, struct_time) # 返回的是將時間元組經(jīng)過"格式"后的時間字符串
上述方法中第一,二個參數(shù)默認值是此時的一個時間刻度;
第三個方法中,format是必須有的,struct_time默認值是此時的時間刻度的一個時間元組
二.time模塊中時間的三種形式之間的轉換:
1.說明:
時間戳能和時間元組之間相互轉換,且不用在意格式;
時間元組和時間字符串之間能相互轉換,可以變更時間字符串的格式;
時間字符串不能直接轉換為時間戳;
時間戳能夠轉換為時間字符串,但時間字符串的格式不能變更
2.三種形式之間轉化的橋梁-時間元組(由兩邊到中間):
最優(yōu)的轉換方法,就是先將各種形式的時間先轉換為時間元組,再進行變更
- 時間戳--->時間元組:
time.localtime(secs) - 時間字符串--->時間元組:
time.strptime(time_string, format) # 注:format的格式是必須跟隨time_string的格式
3.時間元組轉換為時間戳或時間字符串(由中間到兩邊):
- 時間元組--->時間戳:
time.mktime(struct_time) - 時間元組--->時間字符串:
time.strftime(format, struct_time)
注:
time方法中,所有方法的調(diào)用對象都是time