欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python中time、datetime模塊的使用

 更新時間:2020年12月14日 10:44:21   作者:luyuze95  
這篇文章主要介紹了python中time、datetime模塊的使用,幫助大家更好的利用python處理時間,感興趣的朋友可以了解下

1、前言

如果您從事過python web的開發(fā),那一定有過這樣的經(jīng)歷,對于各種復(fù)雜繁瑣的業(yè)務(wù)邏輯,摻雜著各種各樣的時間約束,讓人很容易搞的頭暈眼花,比如展示出一天內(nèi)用戶進(jìn)行過的所有操作記錄,再比如進(jìn)行驗證碼驗證時獲取當(dāng)前時間與驗證碼生成時間進(jìn)行比較,檢查是否超過10分鐘過期時間之類。這些關(guān)于時間的業(yè)務(wù)邏輯,要求我們必須能熟練掌握python中關(guān)于時間的兩個模塊,time和datetime,只有用好了這兩個模塊,我們才能在代碼中輕松自如的應(yīng)對。

2、time模塊

time模塊中時間表現(xiàn)的格式主要有三種:

  • a、timestamp時間戳,時間戳表示的是從1970年1月1日00:00:00開始按秒計算的偏移量
  • b、struct_time時間元組,共有九個元素組。
  • c、format time 格式化時間,已格式化的結(jié)構(gòu)使時間更具可讀性。包括自定義格式和固定格式。

1、時間格式轉(zhuǎn)換圖

2、常用方法

import time

print(time.time()) # 當(dāng)前時間戳
>>> 1569645479.6079931

print(int(time.time()))
>>> 1569645479

print(time.strftime('%Y-%m-%d %H:%M:%S')) # 格式化的時間
>>> 2019-09-28 12:37:59

print(time.strftime('%Y-%m-%d'))
>>> 2019-09-28

print(time.strftime('%H:%M:%S'))
>>> 12:37:59

print(time.gmtime()) # 獲取標(biāo)準(zhǔn)時區(qū)的時間元組,如果傳入了時間戳,就是把時間戳轉(zhuǎn)換成時間元組
>>> time.struct_time(tm_year=2019, tm_mon=9, tm_mday=28, tm_hour=4, tm_min=37, tm_sec=59, tm_wday=5, tm_yday=271, tm_isdst=0)

print(time.gmtime(1569645453))
>>> time.struct_time(tm_year=2019, tm_mon=9, tm_mday=28, tm_hour=4, tm_min=37, tm_sec=33, tm_wday=5, tm_yday=271, tm_isdst=0)

# 使用時間戳獲取代碼執(zhí)行時間
s_time = time.time()
for i in range(0,10):
 time.sleep(1)
e_time = time.time()
print('代碼運行時間是:', e_time-s_time)
>>> 代碼運行時間是: 10.003105163574219

# 字符串格式化時間轉(zhuǎn)換時間戳
str_time = '2019-9-28'
print(time.mktime(time.strptime(str_time, '%Y-%m-%d')))
>>> 1569600000.0

# 時間戳轉(zhuǎn)換成格式化的時間字符串
gsh_time = time.time()
print(time.strftime('%Y-%m-%d', time.localtime(gsh_time)))
>>> 2019-09-28

3、datetime模塊

datatime模塊重新封裝了time模塊,提供更多接口,提供的類有:date,time,datetime,timedelta,tzinfo。

import datetime

now = datetime.datetime.now()
print(now)
>>> 2019-09-28 12:45:59.927901

now = datetime.datetime.now()
d1 = now - datetime.timedelta(hours=1) # 獲取前一小時
d2 = now - datetime.timedelta(days=1) # 獲取前一天
print(now)
>>> 2019-09-28 12:47:56.662933
print(d1)
>>> 2019-09-28 11:47:56.662933
print(d2)
>>> 2019-09-27 12:47:56.662933

# datetime對象轉(zhuǎn)換成時間戳
dt = datetime.datetime.now()
print(time.mktime(dt.timetuple()))
>>> 1569646475.0

# 時間戳轉(zhuǎn)換成datetime對象
sjc_time = time.time()
print(datetime.datetime.fromtimestamp(sjc_time))
>>> 2019-09-28 12:55:05.500752

以上就是python中time、datetime模塊的使用的詳細(xì)內(nèi)容,更多關(guān)于python time、datetime模塊的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評論