python 關於時間處理的知識

2021-09-10 06:39:17 字數 2642 閱讀 7110

記錄關於python及時間的知識,不定時更新....

什麼是時間型別?

時間型別

對python而言,時間型別是datetime模組中datetime類的例項。

我們可以運算這個例項,得到我們希望的資料.

例如django的orm可以直接把這個型別作為引數存入資料庫

通過加減時間增量型別得到乙個未來的或者歷史的時間

從時間戳得到乙個時間型別

什麼是時間增量型別?

時間增量型別

時間增量型別是datetime.timedelta類的例項

它代表的是時間長度,例如5秒鐘,1分鐘,1天,5分3秒.而不是像5點,3月2日這樣的時間點.

時間型別-時間增量型別=時間型別

時間型別-時間型別=時間增量型別

對應舉例:

(5月2日 5點4分) 減去 (1天) 等於(5月1日 5點4分)

(5月2日 5點4分) 減去 (5月1日 5點4分) 等於(1天)

什麼是時間戳?

時間戳是一串float型別的數字

它代表從象徵計算機誕生的時間點到某乙個時間點的秒數。

怎麼獲得當前時間戳?

通過time模組的time方法

import time

now_timestamp = time.time()

print(now_timestamp) # 1548554022.7956614

print(type(now_timestamp)) #

怎麼把時間戳轉化為時間格式?

**裡出現的未定義變數假設來自上文同名變數(下同)

import datetime

now_time_obj = datetime.datetime.fromtimestamp(now_timestamp)

print(now_time_obj) # 2019-01-27 10:30:04.136475

print(type(now_time_obj)) #

怎麼把時間格式轉化為時間戳?

now_time_tuple=now_time_obj.timetuple()

print(now_time_tuple) # time.struct_time(tm_year=2019,......, tm_isdst=-1)

print(type(now_time_tuple)) # now_timestamp=time.mktime(now_time_tuple)

print(now_timestamp) # 1548554593.0

print(type(now_timestamp)) #

怎麼使用時間增量?

print('-' * 30)

now_time_obj=datetime.datetime.now()

print(now_time_obj)

timedelta_obj = datetime.timedelta(minutes=5, hours=1,)

print(timedelta_obj)

print(type(timedelta_obj))

new_time_obj=now_time_obj+timedelta_obj

print(new_time_obj)

print('-' * 30)

結果:

可以看到乙個時間型別加上乙個時間增量得到了乙個新的時間型別

相應的,兩個時間型別進行減運算亦會得到乙個時間增量型別的例項。

怎麼把時間型別轉化為自定義的字串?

now_time_str_1 = now_time_obj.strftime('%y年%m月%d日%h點%m分%s秒')

print(now_time_str_1) # 2023年01月27日10點17分08秒

now_time_str_2 = datetime.datetime.strftime(now_time_obj,'%y年%m月%d日%h點%m分%s秒')

print(now_time_str_2) # 2023年01月27日10點17分08秒

可以看到,通過區域性的方法以及全域性的方法都可以做到這一點.

怎麼把自定義的字串轉化為時間型別?

time_obj=datetime.datetime.strptime(now_time_str_2, '%y年%m月%d日%h點%m分%s秒')

print(time_obj) # 2019-01-27 10:20:56

print(type(time_obj)) #

怎麼得到今天的時間?

today=datetime.date.today()
怎麼得到今天0點的時間物件

today_start=datetime.datetime(today.year, today.month, today.day, 0, 0, 0)

python關於時間的處理

import datetime now time datetime.datetime.now time now time datetime.timedelta days 1 將當前時間轉化為時間戳 格式化時間 import datetime str time datetime.datetime.no...

Python 關於時間處理之時間相減

遇到一些需求,將某個檔案中的時間進行相加減的操作,這裡用到的是 from dateutil.parser import parse,可以將字串形式的時間,進行相加減,如下 import sys import re from dateutil.parser import parse import pa...

python中關於時間變數的處理

時間在python中有3中儲存方法 1.str 2.float 3.struct tuple time.struct time 或 datetime.datetime time.struct time形如 time.struct time tm year 2016,tm mon 11,tm mday...