自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

如何在 Python 中使用 DateTime

開發(fā) 前端
在 Python 中,任何與日期和時間有關的事情都由 datetime 模塊處理,它將模塊進一步分為 5 個不同的類。類只是與對象相對應的數(shù)據(jù)類型。下圖總結(jié)了 Python 中的 5 個日期時間類以及常用的屬性和示例。

所有數(shù)據(jù)在開始時都會自動分配一個“DOB”(出生日期)。因此,在某些時候處理數(shù)據(jù)時不可避免地會遇到日期和時間數(shù)據(jù)。本教程將帶您了解 Python 中的 datetime 模塊以及使用一些外圍庫,如pandas 和 pytz。

在 Python 中,任何與日期和時間有關的事情都由 datetime 模塊處理,它將模塊進一步分為 5 個不同的類。類只是與對象相對應的數(shù)據(jù)類型。下圖總結(jié)了 Python 中的 5 個日期時間類以及常用的屬性和示例。

圖片

3個有用的片段

1.將字符串轉(zhuǎn)換為日期時間格式 ,也許是使用datetime 最常見的情況。

由于日期和時間的字母數(shù)字性質(zhì),將類似的日期和時間解析為 Python 通常會被解釋為字符串。在本節(jié)中,我們將介紹如何將字符串列表解析為日期時間格式,以及如何將日期和時間數(shù)據(jù)拆分和組合到數(shù)據(jù)框中的各個列中。

圖片

圖片

片段 1 的打印輸出

但是,如果日期時間以不尋?;蚰@鈨煽傻姆绞礁袷交趺崔k?一個常見的問題是美國和歐洲的日期時間書寫方式之間的區(qū)別。在美式格式中,月份在前,而在歐洲樣式中,日期在前。

圖片

默認情況下,pandas 中的 to_datetime 通過將前一個少于 12 位 (<12) 的數(shù)字解析為月份來將對象轉(zhuǎn)換為日期時間。例如,2/11/2021 將被解析為 2021-02-11,但 13/11/2021 將被解析為 2021-11-13。但是,有這個格式參數(shù)允許您以其他方式定義格式。

圖片

或者, strftime() 方法有助于在返回字符串之前格式化日期時間。在以下示例中,原始日期時間之間的破折號 (-) 替換為反斜杠 (/),數(shù)字月份 (02) 替換為縮寫的英語術語 (Feb)。

圖片

由于有多種方法可以解釋日期(日、月、年)和時間(時、分、秒),因此了解不同的格式代碼至關重要。下表是常用格式代碼的備忘單。

圖片

2.使用時區(qū)

沒有時區(qū)信息的 datetime 對象被稱為“naive”,有時區(qū)信息的對象(通常在末尾帶有 +HH:MM 對應 GMT)被認為是“aware”。pytz 可能是 Python 中最全面的庫之一,它簡化了時區(qū)計算的任務。以下代碼段將向您展示如何在“naive”和“aware” datetime 對象之間進行轉(zhuǎn)換,并可以使用不同的時區(qū)。代碼的最后一部分還演示了如何將給定的日期時間對象轉(zhuǎn)換為本地時區(qū)。此示例顯示了日本和德國的時區(qū)代碼,對于其他地區(qū),您可以在此處參考。

圖片

圖片

片段2的輸出

3.使用interval比較兩個datetime(s)

有時我們必須有條件地比較兩個日期時間。想象一下,您有兩個數(shù)據(jù)框,第一個數(shù)據(jù)框僅包含一列日期時間,第二個數(shù)據(jù)框包含兩列表示間隔和其余列中的其他信息。您的目標是從第一個數(shù)據(jù)幀中找到匹配的日期時間,如果它落在第二個數(shù)據(jù)幀的間隔內(nèi),如果是,則復制其他列。

圖片

實現(xiàn)此目的的一種方法是使用 pd.Interval 壓縮兩個日期時間的間隔,然后將它們分配為數(shù)據(jù)框的索引,稍后可用于有條件地比較和映射日期時間。如果滿足時間條件,這可以通過使用 for 循環(huán)復制感興趣的列來完成。

圖片

原文:https://towardsdatascience.com/how-to-work-with-datetime-in-python-26d4092dc484

責任編輯:武曉燕 來源: 新鈦云服
相關推薦

2025-03-21 09:58:59

Python數(shù)據(jù)類型安全

2010-03-10 14:03:41

python處理文本

2025-01-20 08:40:00

Python對象

2019-09-16 19:00:48

Linux變量

2014-07-02 09:47:06

SwiftCocoaPods

2020-04-09 10:18:51

Bash循環(huán)Linux

2024-09-06 11:34:15

RustAI語言

2020-11-30 11:55:07

Docker命令Linux

2010-03-11 18:35:46

Python微線程

2011-08-10 09:31:41

Hibernateunion

2021-03-09 07:27:40

Kafka開源分布式

2015-08-27 09:46:09

swiftAFNetworkin

2021-06-09 09:36:18

DjangoElasticSearLinux

2022-05-17 08:25:10

TypeScript接口前端

2024-01-18 08:37:33

socketasyncio線程

2023-01-28 17:41:07

Java代碼

2015-08-31 13:42:06

IDEDockerdoclipser

2018-05-16 10:32:06

Linux命令find

2018-06-26 09:15:24

Linux命令history

2022-11-18 10:16:26

Linuxwc 命令
點贊
收藏

51CTO技術棧公眾號