欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解Python中datetime庫的使用

 更新時(shí)間:2023年04月28日 09:42:13   作者:程序喵正在路上  
這篇文章主要介紹了Python中datetime庫的使用,它提供了一系列由簡單到復(fù)雜的時(shí)間處理方法。datetime 庫可以從系統(tǒng)中獲得時(shí)間,并以用戶選擇的格式輸出,需要的朋友可以參考下

1. datetime 庫概述

以不同格式顯示日期和時(shí)間是程序中最常用到的功能。Python 提供了一個(gè)處理時(shí)間的標(biāo)準(zhǔn)函數(shù)庫 datetime,它提供了一系列由簡單到復(fù)雜的時(shí)間處理方法。

datetime 庫可以從系統(tǒng)中獲得時(shí)間,并以用戶選擇的格式輸出。

datetime 庫以格林威治時(shí)間為基礎(chǔ),每天由 3600X24 秒精準(zhǔn)定義。該庫包括兩個(gè)常量:datetime.MINYEARdatetime.MAXYEAR,分別表示 datetime 所能表示的最小、最大年份,值分別為 19999。

datetime 庫以類的方式提供多種日期和時(shí)間表達(dá)方式。

(1) datetime.date:日期表示類,可以表示年、月、日等。
(2) datetime.time:時(shí)間表示類,可以表示小時(shí)、分鐘、秒、毫秒等。
(3) datetime.dateime:日期和時(shí)間表示的類,功能覆蓋 date 和 time 類。
(4) datetime.timedelta: 與時(shí)間間隔有關(guān)的類。
(5) datetime.tzinfo:與時(shí)區(qū)有關(guān)的信息表示類。

由于 datetime.daetime 類表達(dá)形式最為豐富,這里主要介紹這個(gè)類的使用。使用 datetime 類需要用 import 保留字,引用 datetime類的方式如下:

from datetime import datetime

2. 拓展: 1970年1月1日

當(dāng)代計(jì)算機(jī)系統(tǒng)都有一個(gè)計(jì)時(shí)功能,能夠輸出從格林威治標(biāo)準(zhǔn)時(shí)間 19701100:00:00 開始到當(dāng)下的時(shí)間計(jì)數(shù),精確到秒,這是 UNIX 操作系統(tǒng)早期的設(shè)計(jì)習(xí)慣,后沿用到所有計(jì)算機(jī)系統(tǒng)中。

現(xiàn)在的計(jì)算機(jī)硬件和系統(tǒng)都是 64 位,如果用 64 位存儲(chǔ)這個(gè)時(shí)間計(jì)數(shù)則最大可以表示距離 197011 日開始的 264 秒,1365 天的總秒數(shù)約為 1.9x224 ,因此,64 位計(jì)算機(jī)系統(tǒng)可以將時(shí)間表示到約公元 239 年,相信我們的 N 代子孫,哪怕到地球毀滅那天都不用擔(dān)心時(shí)間不準(zhǔn)確了。

——為什么選擇從 197011 日開始? ——無論選擇從哪天開始, 都會(huì)有同樣的問題, 不是嗎?

3. datetime 庫解析

datetime 類 ( datetime.datetime 類,以下簡稱為 datetime 類) 的使用方式是首先創(chuàng)建一個(gè) datetime 對(duì)象,然后通過對(duì)象的方法和屬性顯示時(shí)間。創(chuàng)建 datetime 對(duì)象有3種方法:datetime.now()datetime.utcnow()datetime.datetime()。

1.使用 datetime.now() 獲得當(dāng)前日期和時(shí)間對(duì)象,使用方法如下:

datetime.now()

作用:返回一個(gè) datetime 類型,表示當(dāng)前的日期和時(shí)間,精確到微秒。 參數(shù):無 調(diào)用該函數(shù),執(zhí)行結(jié)果如下:

from datetime import datetime
today = datetime.now()
print(today)

2022-05-01 20:32:41.772021

2.使用 datetime utcnow() 獲得當(dāng)前日期和時(shí)間對(duì)應(yīng)的 UTC (世界標(biāo)準(zhǔn)時(shí)間) 時(shí)間對(duì)象,使用方法如下:

datetime.utcnow ()

作用:返回一個(gè) datetime 類型,表示當(dāng)前日期和時(shí)間的 UTC 表示,精確到微秒。 參數(shù):無 調(diào)用該函數(shù),執(zhí)行結(jié)果如下:

from datetime import datetime
today = datetime.utcnow()
print(today)

2022-05-01 12:35:40.849860

3.datetime.now()datetime utcnow() 都返回一個(gè) datetime 類型的對(duì)象,也可以直接使用 datetime() 構(gòu)造一個(gè)日期和時(shí)間對(duì)象, 使用方法如下:

datetime (year, month, day, hour=0, minute=0,second=0, microsecond=0)

作用:返回一個(gè) datetime 類型,表示指定的日期和時(shí)間,可以精確到微秒。

參數(shù)如下:

year:指定的年份,MINYEAR <= year <= MAXYEAR

month:指定的月份,1 <= month <= 12

day:指定的日期,1 <= day <=月份所對(duì)應(yīng)的日期上限

hour:指定的小時(shí),0 <= hour < 24

minute:指定的分鐘數(shù),0 <= minute < 60

second:指定的秒數(shù),0 <= second < 60

microsecond:指定的微秒數(shù),0 <= microsecond < 1000000

其中,hour、minute、secondmicrosecond 參數(shù)可以全部或部分省略。

調(diào)用 datetime() 函數(shù)直接創(chuàng)建一個(gè) datetime 對(duì)象,表示 20225120:33,327 微妙,執(zhí)行結(jié)果如下:

from datetime import datetime
someday = datetime(2022, 5, 1, 20, 43, 32, 7)
print(someday)

2022-05-01 20:43:32.000007

到此,程序已經(jīng)有了一個(gè) datetime 對(duì)象,進(jìn)一步可以利用這個(gè)對(duì)象的屬性顯示時(shí)間,為了區(qū)別 datetime 庫名,采用上例中的 someday 代替生成的 datetime 對(duì)象,常用屬性如下表所示。

屬性描述
someday.min固定返回 datetime 的最小時(shí)間對(duì)象,datetime(1,1,1,0,0)
someday.max固定返回 datetime 的最大時(shí)間對(duì)象,datetime(9999,12,31,23,59,59,59,999999)
someday.year返回 someday 包含的年份
someday.month返回 someday 包含的月份
someday.day返回 someday 包含的日期
someday.hour返回 someday 包含的小時(shí)
someday.minute返回 someday 包含的分鐘
someday.second返回 someday 包含的秒鐘
someday.microsecond返回 someday 包含的微妙值

datetime 對(duì)象有 3 個(gè)常用的時(shí)間格式化方法,如下表所示

屬性描述
someday.isoformat()采用 ISO 8601 標(biāo)準(zhǔn)顯示時(shí)間
someday.isoweekday()根據(jù)日期計(jì)算星期后返回 1~7,對(duì)應(yīng)星期一到星期日
someday.strftime(format)根據(jù)格式化字符串 format 進(jìn)行格式顯示的方法

isoformat()isoweekday() 方法的使用如下:

from datetime import datetime
today = datetime.now()
print(today.isoformat())
print(today.isoweekday())

程序執(zhí)行結(jié)果如下:

2022-05-01T21:00:28.392304
7

strftime() 方法是時(shí)間格式化最有效的方法,幾乎可以以任何通用格式輸出時(shí)間。例如下面的例子,用該方法輸出特定格式時(shí)間。

from datetime import datetime
today = datetime.now()
print(today.strftime("%Y-%m-%d %H : %M : %S"))

程序執(zhí)行結(jié)果如下:

2022-05-01 21 : 04 : 23

下表是 strftime() 方法的格式化控制符。

格式化字符串日期/時(shí)間值范圍和實(shí)例
%Y年份0001~9999
%m月份01~12
%B月名January~December
%b月名縮寫Jan~Dec
%d日期01~31
%A星期Monday~Sunday
%a星期縮寫Mon~Sun
%H小時(shí)(24 h 制)00~23
%M分鐘00~59
%S00~59
%x日期月/日/年,例如,01/01/2022
%X時(shí)間時(shí) :分:秒,例如,19 : 09 : 31

strftime() 格式化字符串的數(shù)字左側(cè)會(huì)自動(dòng)補(bǔ)零,上述格式也可以與 print() 的格式化函數(shù)起使用,例如:

from datetime import datetime

now = datetime.now()

print(now.strftime("%Y- %m- %d"))

print(now.strftime("%A,%d. %B %Y %H: %M%p"))

print("今天是 {0:%Y} 年 {0:%m} 月 {0:%d} 日".format(now))

程序執(zhí)行結(jié)果如下:

2022- 05- 01
Sunday,01. May 2022 21: 21PM
今天是 2022 年 05 月 01 日

datetime 庫主要用于對(duì)時(shí)間的表示,從格式化角度掌握 strftime() 函數(shù)已經(jīng)能夠處理很多情況了。建議讀者在遇到需要處理時(shí)間的問題時(shí)采用 datetime 庫,簡化格式輸出和時(shí)間的維護(hù)。  

到此這篇關(guān)于詳解Python中datetime庫的使用的文章就介紹到這了,更多相關(guān)Python datetime庫內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python機(jī)器學(xué)習(xí)之KNN分類算法

    python機(jī)器學(xué)習(xí)之KNN分類算法

    這篇文章主要為大家詳細(xì)介紹了python機(jī)器學(xué)習(xí)之KNN分類算法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-08-08
  • 淺析Python 實(shí)現(xiàn)一個(gè)自動(dòng)化翻譯和替換的工具

    淺析Python 實(shí)現(xiàn)一個(gè)自動(dòng)化翻譯和替換的工具

    這篇文章主要介紹了Python 實(shí)現(xiàn)一個(gè)自動(dòng)化翻譯和替換的工具,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-04-04
  • Python操作MongoDB的教程分享

    Python操作MongoDB的教程分享

    MongoDB?是一個(gè)流行的?NoSQL?數(shù)據(jù)庫,以其半結(jié)構(gòu)化的文檔存儲(chǔ)方式而聞名,本文將帶大家逐步了解如何使用Python與MongoDB進(jìn)行交互,從連接到基本操作,快跟隨小編一起學(xué)習(xí)一下吧
    2023-08-08
  • python利用while求100內(nèi)的整數(shù)和方式

    python利用while求100內(nèi)的整數(shù)和方式

    這篇文章主要介紹了 python利用while求100內(nèi)的整數(shù)和方式,下面文章要描述的內(nèi)容有1到100的和、1到100內(nèi)的偶數(shù)和、1到100內(nèi)的奇數(shù)和,具體詳細(xì)內(nèi)容,需要的朋友可以參考一下
    2021-11-11
  • 詳解Python調(diào)試神器之PySnooper

    詳解Python調(diào)試神器之PySnooper

    在程序開發(fā)過程中,代碼的運(yùn)行往往會(huì)和我們預(yù)期的結(jié)果有所差別。于是,我們需要清楚代碼運(yùn)行過程中到底發(fā)生了什么?代碼哪些模塊運(yùn)行了,哪些模塊沒有運(yùn)行?輸出的局部變量是什么樣的?PySnooper,能夠大大減少調(diào)試過程中的工作量
    2021-11-11
  • 解決python寫入帶有中文的字符到文件錯(cuò)誤的問題

    解決python寫入帶有中文的字符到文件錯(cuò)誤的問題

    今天小編就為大家分享一篇解決python寫入帶有中文的字符到文件錯(cuò)誤的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • Python3將數(shù)據(jù)保存為txt文件的方法

    Python3將數(shù)據(jù)保存為txt文件的方法

    這篇文章主要介紹了Python3將數(shù)據(jù)保存為txt文件的方法,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-09-09
  • python如何將空格分隔輸入兩個(gè)數(shù)

    python如何將空格分隔輸入兩個(gè)數(shù)

    這篇文章主要介紹了python如何將空格分隔輸入兩個(gè)數(shù)問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-02-02
  • Python實(shí)現(xiàn)的手機(jī)號(hào)歸屬地相關(guān)信息查詢功能示例

    Python實(shí)現(xiàn)的手機(jī)號(hào)歸屬地相關(guān)信息查詢功能示例

    這篇文章主要介紹了Python實(shí)現(xiàn)的手機(jī)號(hào)歸屬地相關(guān)信息查詢功能,涉及Python文件讀取及基于第三方接口調(diào)用查詢信息的相關(guān)操作技巧,需要的朋友可以參考下
    2017-06-06
  • Python編程入門指南之函數(shù)

    Python編程入門指南之函數(shù)

    這篇文章主要為大家介紹了Python編程之函數(shù),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-01-01

最新評(píng)論