Python 時間模組time datetime

2021-10-08 16:45:52 字數 4140 閱讀 1741

時間戳(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...