時間戳(timestamp):通常來說,時間戳表示的是從2023年1月1日00:00:00開始按秒計算的偏移量。我們執行「type(time.time())」,返回的是float型別。
格式化的時間字串(format string)
結構化的時間(struct_time):struct_time元組共有9個元素共九個元素:(年,月,日,時,分,秒,一年中第幾周,一年中第幾天,夏令時)
import time
print
(time.time())
# 1596091400.0042257 時間戳
print
(time.strftime(
'%y-%m-%d %x'))
# 2020-07-30 14:43:20 格式化時間字串
print
(time.localtime())
# 結構化時間
# 本地時間
# time.struct_time(tm_year=2020, tm_mon=7, tm_mday=30, tm_hour=14, tm_min=43, tm_sec=20, tm_wday=3, tm_yday=212, tm_isdst=0)
print
(time.gmtime())
# utc時區時間
# time.struct_time(tm_year=2020, tm_mon=7, tm_mday=30, tm_hour=6, tm_min=43, tm_sec=20, tm_wday=3, tm_yday=212, tm_isdst=0)
計算機認識的時間只能是』時間戳』格式,而程式設計師可處理的或者說人類能看懂的時間有: 『格式化的時間字串』,『結構化的時間』 ,於是有了時間格式的轉換關係如下圖;
時間戳轉換為當前時區的結構化時間。secs引數未提供,則以當前時間為準。
import time
# gmtime([secs]) 和localtime()方法類似,gmtime()方法是將乙個時間戳轉換為utc時區的struct_time。
a = time.localtime(
3333
)b = time.localtime(time.time())
c = time.localtime(
)print
(a)print
(b)print
(c)# time.struct_time(tm_year=1970, tm_mon=1, tm_mday=1, tm_hour=8, tm_min=55, tm_sec=33, tm_wday=3, tm_yday=1, tm_isdst=0)
# time.struct_time(tm_year=2020, tm_mon=7, tm_mday=30, tm_hour=14, tm_min=54, tm_sec=0, tm_wday=3, tm_yday=212, tm_isdst=0)
# time.struct_time(tm_year=2020, tm_mon=7, tm_mday=30, tm_hour=14, tm_min=54, tm_sec=0, tm_wday=3, tm_yday=212, tm_isdst=0)
mktime(t) : 將乙個struct_time轉化為時間戳。
print
(time.mktime(time.localtime())
)#1473525749.0
strftime(format[, t]) : 把乙個代表時間的元組或者struct_time化為格式化的時間字串。
print
(time.strftime(
"%y-%m-%d %x"
, time.localtime())
)#2020-07-30 13:49:56
把乙個格式化時間字串轉化為struct_time。實際上它和strftime()是逆操作。
asctime([t]) :把乙個表示時間的元組或者struct_time表示為這種形式:『sun jun 20 23:21:05 1993』。
# 如果沒有引數,將會將time.localtime()作為引數傳入。
print
(time.asctime())
#sun sep 11 00:43:43 2020
ctime([secs]) :把乙個時間戳(按秒計算的浮點數)轉化為time.asctime()的形式。如果引數未給或者為none的時候,將會預設time.time()為引數。它的作用相當於time.asctime(time.localtime(secs))。
print
(time.ctime())
print
(time.ctime(time.time())
)# thu jul 30 15:11:06 2020
# thu jul 30 15:11:06 2020
import datetime
print
(datetime.datetime.now())
# 返回 2020-07-30 15:13:10.834223
print
(datetime.date.fromtimestamp(time.time())
)# 時間戳直接轉成日期格式 2020-07-30
print
(datetime.datetime.now(
)+ datetime.timedelta(3)
)# 當前時間+3天
print
(datetime.datetime.now(
)+ datetime.timedelta(-3
))# 當前時間-3天
print
(datetime.datetime.now(
)+ datetime.timedelta(hours=3)
)# 當前時間+3小時
print
(datetime.datetime.now(
)+ datetime.timedelta(minutes=30)
)# 當前時間+30分
c_time = datetime.datetime.now(
)print
(c_time.replace(minute=
3, hour=2)
)# 時間替換
# 結果
2020-07
-3015:
13:10.834223
2020-07
-302020-08
-0215:
13:10.834223
2020-07
-2715:
13:10.834223
2020-07
-3018:
13:10.834223
2020-07
-3015:
43:10.834223
2020-07
-3002:
03:10.834223
# 執行緒推遲指定的時間執行,單位為秒。
time.sleep(3)
# 停三秒後,繼續執行
python 時間模組
import os import time s 2019 7 14 print time.strptime s,y m d s time 09 00 00 print time.strptime s time,h m s 把元組的時間轉換為時間戳 tuple time time.localtime ...
python 時間模組
格式化時間字串 y 兩位數的年份表示 00 99 y 四位數的年份表示 0000 9999 m 月份 01 12 d 月內的一天 0 31 h 24小時制的小時數 0 23 i 12小時制的小時數 01 12 m 分鐘數 00 59 s 秒 00 59 a 本地簡化星期名稱 a 本地完整星期名稱 b...
python 時間模組
時間的一般表示 import time s 2019 7 14 print time.strptime s,y m d 1.時間戳 print time.time 2.字串時間 print time.ctime 3.元組型別的時間 print time.localtime info time.loc...