1、UTC(世界協調時間):格林尼治天文時間,世界標準時間,在中國來說是UTC+8
2、DST(夏令時):是一種節約能源而人爲規定時間制度,在夏季調快1個小時
時間的表示形式:
1、時間戳
以整型或浮點型表示時間的一個以秒爲單位的時間間隔。這個時間間隔的基礎值是從1970年1月1日零點開始算起
2、元組
一種Python的數據納構表示,這個元組有9個整型內容
屬性 | 含義 | |
---|---|---|
tm_year | 年 | |
tm_mon | 月 | 1到12 |
tm_mday | 日 | 1到31 |
tm_hour | 小時 | 0到23 |
tm_min | 分鐘 | 0到59 |
tm_sec | 秒 | 0到61(60或61是閏秒) |
tm_wday | 一週的第幾日 | 0到6(0是週一) |
tm_yday | 一年的第幾日 | 1到366 |
tm_isdst | 夏令時 | 0,1,-1 |
注:tm_isdst中的0表示正常時間,1表示正常時間,-1表示時間不確定是否爲夏令時。
一般用0比較多,-1是我們人爲規定時間的時候纔是-1
3、格式化字符串
符號 | 含義 |
---|---|
%a | 本地(local)簡化星期名稱 |
%A | 本地完整星期名稱 |
%b | 本地簡化月份名稱 |
%B | 本地完整月份名稱 |
%c | 本地相應的日期和時間表示 |
%d | 一個月中的第幾天(01 - 31) |
%H | 一天中的第幾個小時(24小時制,00 - 23) |
%I | 一天中的第幾個小時(12小時制,01 - 12) |
%j | 一年中的第幾天(001 - 366) |
%m | 月份(01一12) |
%M | 分鐘數 (00 - 59) |
%p | 本地AM或者PM的等價符 |
%S | 秒(01-61) |
%U | 一年中的星期數。(00- 53)星期天是一 個星期的開始,第一個星期天之前的所有天數都放在第0周 |
%w | 一個星期中的第幾天(0一6,0是星期天) |
%W | 和%U基本相同, 不同的是%W以星期一爲一個星期的開始。 |
%x | 本地相應日期 |
%X | 本地相應時間 |
%y | 去掉世紀的年份 (00 - 99) |
%Y | 完整的年 |
%Z | 時區的名字(如果不存在爲空字符) |
%% | ‘%’字符 |
注:一定要嚴格區分大小寫
函數詳解
1、time()函數
time()函數用於返回當前時間的時間戳(從1970年1月1號零點零分零秒到現在的時間戳),浮點數形式,不需要參數
time()函數的語法:
time.time()
import time
print("當前時間的時間的時間戳:%f" % time.time())
運行結果:
當前時間的時間的時間戳:1580118533.995739
2、gmtime()函數
gmtime()函數函數用於將時間戳作爲UTC時間元組
gmtime()函數的語法:
time.gmtime(x)
參數x - - 本地時間戳time.time(),也可以不加參數,不加參數默認爲本地時間
type類型爲time.struct_time
import time
print(time.gmtime())
運行結果:
time.struct_time(tm_year=2020, tm_mon=1, tm_mday=27, tm_hour=10, tm_min=2, tm_sec=29, tm_wday=0, tm_yday=27, tm_isdst=0)
3、localtime()函數
localtime()函數函數用於將時間戳作爲本地時間元組
localtime()函數的語法:
time.localtime(x)
參數x - - 本地時間戳time.time(),也可以不加參數,不加參數默認爲本地時間
type類型爲time.struct_time
import time
print(time.localtime())
運行結果:
time.struct_time(tm_year=2020, tm_mon=1, tm_mday=27, tm_hour=18, tm_min=9, tm_sec=58, tm_wday=0, tm_yday=27, tm_isdst=0)
4、mktime()函數
mktime()函數函數用於將本地時間元組轉成時間截
mktime()函數的語法:
time.mktime(x)
參數x - - 本地時間元組time.localtime()或者time.gmtime,或者全滿 9 個元素的元組
type類型爲float
import time
x = (2019, 10, 2, 10, 40, 20, 3, 155, -1)
print(time.mktime(x))
print(time.mktime(time.localtime()))
運行結果:
1569984020.0
1580120419.0
5、asctime()函數
asctime()函數函數用於將時間元組轉爲字符串
asctime()函數的語法:
time.asctime(x)
參數x - - 本地時間元組time.localtime()或者time.gmtime,或者全滿 9 個元素的元組
type類型爲str
import time
x = (2019, 10, 2, 10, 40, 20, 3, 155, -1)
print(time.asctime(x))
print(time.asctime(time.localtime()))
運行結果:
Thu Oct 2 10:40:20 2019
Mon Jan 27 18:23:10 2020
6、ctime()函數
ctime()函數函數用於將時間戳轉爲字符串
ctime()函數的語法:
time.ctime(x)
參數x - - 本地時間戳time.time(),或者自己擬定的時間戳,若未給出參數,則默認爲time.time()
type類型爲str
import time
x = (1569984020.0)
print(time.ctime(x))
print(time.ctime(time.time()))
運行結果:
Wed Oct 2 10:40:20 2019
Mon Jan 27 18:27:39 2020
7、strftime()函數
strftime()函數用於接收時間元組,並返回以可讀字符串表示的當地時間。格式由參數決定
strftime()函數的語法:
time.strftime(" %Y-%m-%d %H:%M:%S ",x)
參數1 - - 格式化給定時間的指令,這個可以自己擬定,只要是用strptime合法的格式化符號
參數2 - - 被格式化以秒爲單位的時間,時間元組,爲一個可選參數。如果沒有,默認爲當前時間
type類型爲str
import time
x = "%Y-%m-%d %H:%M:%S"
print(time.strftime(x))
print(time.strftime(x, time.localtime()))
運行結果:
2020-01-27 18:39:40
2020-01-27 18:39:40
8、strptime()函數
strptime()函數用於根據給定的格式把一個時間字符串解析爲時間元組
strptime()函數的語法:
time.strptime(x," %Y-%m-%d %H:%M:%S ")
參數1 - - 時間字符串
參數2 - - 格式化字符串的格式
type類型爲time.struct_time
import time
print(time.strptime("2020-01-27", "%Y-%m-%d"))
運行結果:
time.struct_time(tm_year=2020, tm_mon=1, tm_mday=27, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=0, tm_yday=27, tm_isdst=-1)
9、sleep()函數
sleep()函數用於延遲一個時間,整型或者浮點型
sleep()函數的語法:
time.sleep(x)
參數x - - 暫停執行的秒數
import time
time.sleep(2)
運行結果:
就是暫停了2秒,然後程序執行完畢
9、clock()函數
clock()函數用於返回當前程序的cpu執行時間
unix系統始終返回全部的運行時間
windows從第二次開始,都是以第一個調用此函數的開始間隔作爲基數
clock()函數的語法:
time.clock()
print(“測試的語句”)
time.clock()
import time
time.clock()
time.sleep(2)
y1 = time.clock()
print(y1)
time.sleep(2)
y2 = time.clock()
print(y2)
運行結果:
2.0004032
4.0008972
始終是以第一個time.clock()作爲對齊標準
time.clock已在Python 3.3中棄用,將從Python 3.8中刪除:使用time.perf_counter或time.process_time代替