獲取當前時間戳
import time
t = time.time()
print(t) # 獲取當前的時間戳
print(int(t)) # 獲取整數時間戳
print(int(round(time.time() * 1000))) # 獲取毫秒級的時間戳
結果如下:
1621494071.3625572
1621494071
1621494071363
格式化時間
import time
n1 = time.strftime('%Y-%m-%d %H:%M:%S')
print('當前時間格式化:{}'.format(n1))
n2 = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(1621487655))
print('指定時間格式化:{}'.format(n2))
結果如下:
當前時間格式化:2021-05-20 15:12:52
指定時間格式化:2021-05-20 13:14:15
常用的格式化符號如下
符號 | 含義 | 范圍 |
---|---|---|
%y | 兩位數的年份表示 | 00 ~ 99 |
%Y | 四位數的年份表示 | 000 ~ 999 |
%m | 月份 | 01 ~ 12 |
%d | 月內中的一天 | 0 ~ 31 |
%H | 24小時制的小時數 | 0 ~ 23 |
%I | 12小時制的小時數 | 01 ~ 12 |
%M | 分鍾數 | 00 ~ 59 |
%S | 秒數 | 00 ~ 59 |
格式化時間轉時間戳
import time
s = '2021-05-20 13:14:00'
t = time.mktime(time.strptime(s, "%Y-%m-%d %H:%M:%S"))
print(t)
結果如下:
1621487640.0
獲取今天日期
import time
import datetime
# 獲取當前時間,然后格式化為指定格式
today1 = time.strftime('%Y-%m-%d')
print(today1)
# 獲取今天的日期
today2 = datetime.date.today()
print(today2)
結果如下:
2021-05-20
2021-05-20
獲取與datetime.now()相關的信息
import datetime
# 當前時間
print(datetime.datetime.now())
# 當前時間(格式化)
print(datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S'))
# 當前日期
print(datetime.datetime.now().date())
# 年
print(datetime.datetime.now().year)
# 月
print(datetime.datetime.now().month)
# 日
print(datetime.datetime.now().day)
結果如下:
2021-05-20 17:44:35.406220
2021-05-20 17:44:35
2021-05-20
2021
5
20
求兩個日期的天數差
import datetime
a = datetime.date(2021, 5, 20)
b = datetime.date(2021, 5, 10)
c = a - b
print(c.days)
結果如下:
10
獲取當前時間前后的時間
import datetime
# 1小時前
a = datetime.datetime.now() - datetime.timedelta(hours=1)
print('1小時前:', a.strftime('%Y-%m-%d %H:%M:%S'))
# 10分鍾之后
b = datetime.datetime.now() + datetime.timedelta(minutes=10)
print('10分鍾后:', b.strftime('%Y-%m-%d %H:%M:%S'))
# 一周前
c = datetime.datetime.now() - datetime.timedelta(days=7)
print('一周前:', c.strftime('%Y-%m-%d %H:%M:%S'))
結果如下
1小時前: 2021-05-20 16:34:09
10分鍾后: 2021-05-20 17:44:09
一周前: 2021-05-13 17:34:09
注:datetime.timedelta()表示一個時間的長度,通常用作求兩個日期或者時間的差值。