本文目錄一覽:
- 1、python date,datetime 和time的區別
- 2、python中的time模塊,如何獲取當前時間並格
- 3、python 如何將字符串轉化為datetime.date
- 4、Python中如何用time計算時間差
- 5、python中的time模塊
python date,datetime 和time的區別
1,date是日期,通常就是日曆上的年月日,比較大一點的時間單位。
2,time通常就是指秒鐘數,即從1970年1月1日至今進過的秒鐘數。或者指一天中的時分秒,比較小一點的時間單位。就像你問別人What’s the time,別人會告訴你幾點幾分,而不會告訴你年月日。
3,datetime就是年月日和時分秒,包含以上兩者。
datetime模塊是用來處理日期時間的,通常是用來進行計算日期,可以很方便的使用加減運算。而time模塊主要是用來處理秒鐘時間的,當然這個秒鐘數也可以轉化成日期,獲取當前日期通常就是從這個模塊獲取的。不過說time時,有時候表示的也會很寬泛,因為它的詞義就是時間嘛,這個不用太計較的。不過date的意義是確定無疑的。
python中的time模塊,如何獲取當前時間並格
import time
# 使用time獲取當前時間
time.localtime()
# 使用 time 模塊的 strftime 方法來格式化日期,:
# 格式化成2018-05-28 17:36:35形式
print (time.strftime(“%Y-%m-%d %H:%M:%S”, time.localtime()) )
# 格式化成Mon May 28 17:36:35 2018形式
print (time.strftime(“%a %b %d %H:%M:%S %Y”, time.localtime()))
python3
python 如何將字符串轉化為datetime.date
比較省事的辦法是用time模塊的strptime方法來解析日期字符串成為時間對象,然後再把年月日部分提取出來,最後生成datetime.date對象。
# 方法1, 用time模塊的strptime方法來解析日期字符串成為時間對象
import time, datetime
date_str = ‘2017-10-19’
fmt = ‘%Y-%m-%d’
time_tuple = time.strptime(date_str, fmt)
year, month, day = time_tuple[:3]
a_date = datetime.date(year, month, day)
print(a_date, type(a_date))
# 方法2, 直接把日期字符串拆分轉換成 年/月/日 對應的整數
import datetime
date_str = ‘2017-10-19’
print(datetime.date(*map(int, date_str.split(‘-‘))))
Python中如何用time計算時間差
1
首先我們需要import
datetime,導入日期處理庫
2
然後把日期轉化成datetime標準格式,如下圖所示使用datetime.datetime.strptime方法將字符串格式的時間轉化為標準格式
3
其中”%Y/%m/%d
%H:%M:%S”為time字符串的時間格式
Y為年,m為月,d為天,H為小時,M為分鐘,S為秒,執行轉化結果如下
4
下面如果我們要加的時間是天則如下圖,當前時間加上datetime.timedelta(days=1)。datetime的timedelta方法實現
5
同理如果要加的時間是小時則如下,當前時間加上datetime.timedelta(hour
s=1)
6
同理如果要加的時間是分鐘則如下,當前時間加上datetime.timedelta(minutes=1)
7
如果加的時間是s的話,如下當前時間加上datetime.timedelta(seconds=1)
8
如果是加年的話需要把年數轉化成day再做計算
python中的time模塊
time模塊是python專門用來處理時間的內建庫。
下面我們來記錄一些基本使用方法。
ps: 用到了一些概念,比如unix時間戳,感興趣的同學自行百度。
下文參考他人博客內容, 傳送門
time.time()函數獲取的是Unix時間戳。
返回的是一個float類型的數值。
在python中的time模塊中定義了一個叫struct_time的元組,是用來構建時間對象的。
struct_time元組共9個元素組成,如下圖:
這個函數可以接受一個unix時間戳,然後轉換為struct_time。
如果不傳入second參數,則會返回當前時間的時間戳的struct_time對象
再試試傳入當前時間的時間戳,是否能得到上面的struct_time呢?
和我們預期的結果一致。
和localtime函數類似,默認情況gmtime函數獲取當前時間的utc時間。
返回當前時間的utc時間的struct_time對象。
也可以傳入任意的unix時間戳,來得到utc時間。
將一個時間戳struct_time對象轉換為時間戳。
傳入一個struct_time對象,返回”Sun Jun 20 23:21:05 1993″這種格式的字符串。不傳參數,返回當前時間的這種格式的字符串。
傳入格式和struct_time,返回按照format格式格式化後的時間字符串。
格式佔位符可以參考下圖:
將字符串時間轉為struct_time,time.strftime()的逆向操作。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/278945.html