溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Python中datetime庫如何使用

發(fā)布時(shí)間:2021-07-02 15:43:58 來源:億速云 閱讀:290 作者:Leah 欄目:大數(shù)據(jù)

這期內(nèi)容當(dāng)中小編將會給大家?guī)碛嘘P(guān)Python中datetime庫如何使用,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

datetime模塊包含用于進(jìn)行日期和時(shí)間解析、格式化和運(yùn)算的函數(shù)與類

時(shí)間

時(shí)間值可以通過time類表示,time實(shí)例包含小時(shí)、分鐘、秒、毫秒屬性,同時(shí)也包含時(shí)區(qū)信息。time實(shí)例只保存時(shí)間取值,和日期沒有關(guān)系。time的精度是微妙。

import datetime

def time_study():
   t = datetime.time()
   print (t)

   t = datetime.time(0, 2, 3)
   print (t)

   t = datetime.time(1, 2, 3, microsecond=2)
   print (t)
   print (t.microsecond)
   print (t.tzinfo)

   print ("Earliest  :", datetime.time.min)
   print ("Latest    :", datetime.time.max)
   print ("Resolution:", datetime.time.resolution)

日期

日歷日期值可以通過date類表示,date實(shí)例包含年、月、日屬性。使用類方法today()可以很容易的創(chuàng)建當(dāng)前日期。下述展示創(chuàng)建日期的幾種方式

  • 使用固定值

  • 使用時(shí)間戳

  • 使用replace方法

def date_study():
   date = datetime.date(1, 1, 1)
   print (date)
   print (date.toordinal())

   import time
   ts = time.time()
   date = datetime.date.fromtimestamp(ts)
   print (date)

   date = datetime.date.today()
   print (date)
   date_2 = date.replace(year=2019)
   print (date_2)


   today = datetime.date.today()
   print (today)
   print ('ctime :', today.ctime())
   print ('ordinal:', today.toordinal())
   tt = today.timetuple()
   print ('timetuple: tm_year = ', tt.tm_year)


   print ("Earliest  :", datetime.date.min)
   print ("Latest    :", datetime.date.max)
   print ("Resolution:", datetime.date.resolution)

timedeltas

兩個(gè)datetime對象或者datetime對象和timedelta通過算術(shù)操作,可以得到其他日期。兩個(gè)date相減可以得到timedelta。timedelta內(nèi)部以天、秒、微秒為單位存儲。

def timedelta_study():
   print ('hours: ', datetime.timedelta(hours=10))
   print ('days: ', datetime.timedelta(days=1, seconds=100))

   delta = datetime.timedelta(days=1, seconds=100)
   print ('total seconds: ', delta.total_seconds())

日期算術(shù)

日期支持標(biāo)準(zhǔn)的算術(shù)運(yùn)算符,下述例子中展示了使用timedelta產(chǎn)生新的日期以及兩個(gè)日期相減得到timedelta。

def date_arithmetic_study():

   today = datetime.date.today()
   one_day = datetime.timedelta(days=1)

   yesterday = today - one_day
   tommorow = today + one_day

   print ('today: ', today)
   print ('yesterday: ', yesterday)
   print ('tommorow: ', tommorow)

   print ('tommorow - yesterday: ', tommorow - yesterday)

日期比較

date和time實(shí)例支持標(biāo)準(zhǔn)的比較運(yùn)算符,可以確定那個(gè)日期更早或更晚

def date_compare_study():

   t_1  = datetime.time(1, 2, 3)
   t_2 = datetime.time(4, 5, 6)
   print (t_1)
   print (t_2)
   print ('t_1 < t_2 :', t_1 < t_2)

   d_1 = datetime.date.today()
   d_2 = datetime.date.today()  + datetime.timedelta(days=1)
   print (d_1)
   print (d_2)
   print ('d_1 > d_2 :', d_1 > d_2)

日期和時(shí)間合并

datetime類合并了date和time組件,與date一樣,有幾個(gè)方便的類方法創(chuàng)建datetime實(shí)例。

def combine_date_and_time():
   print ('Now  :', datetime.datetime.now())
   print ('Today:', datetime.datetime.today())

   d = datetime.datetime.now()
   print ('datetime Year:', getattr(d, 'year'))
   print ('datetime Hour:', getattr(d, 'hour'))

   t = datetime.time(1, 2, 3)
   d = datetime.date.today()

   dt = datetime.datetime.combine(d, t)
   print (dt)

日期格式化與解析

datetime默認(rèn)字符串表示使用的是ISO-8601格式, strftime:將datetime轉(zhuǎn)換成指定格式 strptime:將指定格式的字符串轉(zhuǎn)換成datetime對象

def format_and_parse():
   dt = datetime.datetime.now()
   print (dt)

   dt_format = '%Y-%m-%d %H:%M:%S'
   dt_str = dt.strftime(dt_format)
   print (dt_str)

   dt_new = datetime.datetime.strptime(dt_str, dt_format)
   print (dt_new.strftime(dt_format))

   print ('{:%Y-%m-%d}'.format(dt))
符號描述
%Y完整年份,帶世紀(jì)
%m月份
%d日(零填充)
%H小時(shí)(24時(shí)制)
%M分鐘
%S
%w周幾
%W該年的第幾周
%j該年的第幾天

上述就是小編為大家分享的Python中datetime庫如何使用了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI