目錄
簡介
函數(shù)介紹及運用
date:日期類
1.獲取當前時間
?2.日期對象的屬性
3.date類中時間和時間戳的轉(zhuǎn)換:
4.修改日期使用replace方法?
time:時間類
?time類操作
datetime:日期時間類
timedelta:時間間隔,即兩個時間點之間的時間長度
簡介
在項目開發(fā)中做功能經(jīng)常會用到關(guān)于時間的操作。比如會員過期的定時任務(wù),一些代碼的延遲執(zhí)行。在python中比較常用的三個時間模塊分別是:time、calendar、datetime模塊。今天介紹的是datetime模塊。
在python中表示時間的格式有三種:時間戳、元組、格式化時間。與time模塊類似,datetime模塊也能夠?qū)atetime類型轉(zhuǎn)換成這三種類型。
函數(shù)介紹及運用
date:日期類
常用屬性:year/month/day
1.獲取當前時間
import datetime
today = datetime.datetime.today()
today1 = datetime.datetime.now()
?結(jié)果:
?2.日期對象的屬性
import datetime
# 這兩種都可以
today = datetime.datetime.today()
# today1 = datetime.datetime.now()
print("當前日期:", today) # 當前日期
print("當前日期(字符串):", today.ctime()) # 返回日期的字符串
print("時間元組信息:", today.timetuple()) # 當前日期的時間元組信息
print("年:", today.year) # 返回today對象的年份
print("月:", today.month) # 返回today對象的月份
print("日:", today.day) # 返回today對象的日
print("星期:", today.weekday()) # 0代表星期一,類推
print("公歷序數(shù):", today.toordinal()) # 返回公歷日期的序數(shù)
print("年/周數(shù)/星期:", today.isocalendar()) # 返回一個元組:一年中的第幾周,星期幾
?結(jié)果:
3.date類中時間和時間戳的轉(zhuǎn)換:
(1)toordinal方法返回的公歷序數(shù)轉(zhuǎn)化為日期
import datetime
today = datetime.datetime.now()
# 此方法的返回類型是一個數(shù)字,它是該日期在公歷中的序數(shù)。
num = today.toordinal()
print(num)
print(today.fromordinal(num))
結(jié)果:
(2)time模塊時間戳轉(zhuǎn)化日期
import datetime
import time
nowtime = time.time()
print(nowtime)
nowdate = datetime.date.fromtimestamp(nowtime)
print(nowdate)
結(jié)果:
(3)格式化時間,格式參照time模塊中的strftime方法
import datetime
today = datetime.date.today()
print(today)
print(today.strftime("%Y.%m.%d"))
print(today.strftime("%Y:%m:%d"))
print(today.strftime("%Y.%m.%d %H:%M:%S"))
結(jié)果:
4.修改日期使用replace方法?
import datetime
# 當前日期
date1 = datetime.date.today()
print(date1)
# 指定日期
date2 = datetime.date(2022, 10, 7)
print(date2)
# 不帶參數(shù)修改日期
date3 = date2.replace(2022, 10, 8)
print(date3)
# 帶參數(shù)修改日期
date4 = date2.replace(month=12, day=9)
print(date4)
?結(jié)果:
time:時間類
常用屬性:hour/minute/second/microsecond
time類生成time對象,包含hour、minute、second、microsecond屬性
?time類操作
import datetime
# time對象
print(datetime.time)
# 格式化time
time1 = datetime.time(18, 30, 59, 59)
print(time1)
print(time1.hour)
print(time1.minute)
print(time1.second)
print(time1.microsecond) # 微秒
結(jié)果:
datetime:日期時間類
datetime類包含date類和time類的全部信息
import datetime
print(datetime.datetime.today())
print(datetime.datetime.now())
print(datetime.datetime.utcnow()) # 返回當前UTC日期和時間的datetime對象
print(datetime.datetime.fromtimestamp(1670582201)) # 時間戳的datetime對象
print(datetime.datetime.fromordinal(738498))
print(datetime.datetime.strptime("2020-12-25", "%Y-%m-%d"))
結(jié)果:
timedelta:時間間隔,即兩個時間點之間的時間長度
timedelta對象表示的是一個時間段,即兩個日期date或者日期時間datetime之間的差;支持參數(shù):weeks、days、hours、minutes、seconds、milliseconds、microseconds
timedelta 操作
import datetime
day = datetime.date.today()
# 當前日期
print(day)
# 增加7天后日期
print(day+datetime.timedelta(days=7))
# 時間操作
now = datetime.datetime.now()
# 當前日期時間
print(now)
# 增加8小時
print(now+datetime.timedelta(hours=8))
# 增加30分鐘
print(now+datetime.timedelta(minutes=30))
# 增加30秒鐘
print(now+datetime.timedelta(seconds=30))
# 減去一星期
print(now-datetime.timedelta(weeks=1))
結(jié)果:
文章來源:http://www.zghlxwxcb.cn/news/detail-487078.html
本文介紹了datetime模塊的使用,不會使用時間或者對時間操作陌生的小伙伴,可以參考時間模塊(time,calendar,datetime)博客,來實現(xiàn)與其他三種時間格式的轉(zhuǎn)換,與日期的操作。?文章來源地址http://www.zghlxwxcb.cn/news/detail-487078.html
到了這里,關(guān)于Python時間模塊之datetime模塊的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!