Python常用的日期和時間方法


獲取當前時間戳

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()表示一個時間的長度,通常用作求兩個日期或者時間的差值。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM