Python時間庫 datetime的詳解及使用

2021-10-09 02:10:41 字數 3508 閱讀 5242

一、概述

datetime庫定義了2個常量和5個類。

常量名/類名

描述2個常量

minyear=1

axyear=9999

5個類date類

表示日期的類

time類

表示時間的類

datetime類

表示時間日期的類

timedelta類

表示兩個datetime物件的差值;

tzinfo類

表示時區的相關資訊

1、date類

date類包含三個引數,分別為year,month,day,返回格式為year-month-day。

方法名稱

描述使用

__new__(year,month,day)

預設的建構函式,建立date類的物件時直接傳入year,month,day三個引數即可返回對應的日期。

import datetime

date = datetime.date(2018,4,28)

print(date)

輸出:

2018-04-28

fromtimestamp(t)

使用時間戳構造物件,使用方法為:datetime.date.fromtimestamp(t),傳入引數t為乙個時間戳,返回時間戳t對應的日期

today()

使用今天的日期構造物件,使用方法為:datetime.date.today(),無引數,返回今天的日期。

import datetime

date = datetime.date.today()

print(date)

輸出:

2020-08-11

fromordinal(n)

使用日期序數構造物件,使用方法為:datetime.date.fromordinal(n),傳入引數為乙個整數序數,代表從公元1年1月1日開始的序數,序數每增加1代表增加1天,返回最終計算出的日期。

import datetime

date = datetime.date.fromordinal(500)

print(date)

輸出:

0002-05-15

類方法:

方法名稱

描述使用

timetuple()

返回日期對應的time.struct_time物件,格式為time.struct_time(tm_year=1, tm_mon=1, tm_mday=2, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=1, tm_yday=2, tm_isdst=-1)

import datetime

date = datetime.date.fromordinal(500)

tuple = date.timetuple()

print(tuple)

輸出:

time.struct_time(tm_year=2, tm_mon=5, tm_mday=15, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=2, tm_yday=135, tm_isdst=-1)

toordinal()

相當於fromordinal(n)的逆過程,返回值即為fromordinal(n)中的日期序數n

import datetime

date = datetime.date.fromordinal(500)

day_num = date.toordinal()

print(day_num)

輸出:

weekday()

isoweekday()

返回該日期對應星期幾,用[0,6]代表星期一到星期日。

import datetime

date = datetime.date(2020,08,11)

day = date.weekday()

print(day)

isocalendar()

返回乙個三元組,格式為(year,week_number,weekday),分別代表年,第幾周,星期幾。

import datetime

date = datetime.date.today()

day = date.isocalendar()

print(day)

輸出:

(2020, 33, 2)

isoformat()

返回標準日期格式:yyyy-mm-dd。

import datetime

date = datetime.date.today()

day = date.isoformat()

print(day)

輸出:

2020-08-11

ctime()

返回格式為:sat sep 8 00:00:00 2018

import datetime

date = datetime.date.today()

day = date.ctime()

print(day)

輸出:

tue aug 11 00:00:00 2020

strftime(format)

把日期按照format指定的格式進行格式化,具體的格式化符號如下。

replace(year,month,day)

傳入引數為year,month,day,返回對應的新日期。

2、time類

time類包含六個引數,分別為hour,minute,second,microsecond,tzinfo,fold,返回格式為hour:minute:second(.microsecond)。

3、datetime類

datetime類是date類和time類的合體,包含前兩個類的全部引數。

4、timedelta類

timedelta類代表兩個datetime物件之間的時間差。

二、使用

import datetime

# 獲取當前日期和時間

now_time = datetime.datetime.now()

# 格式化成想要的日期

比如:「2016-09-21」:datetime.datetime.now().strftime('%y-%m-%d')

# 對當前時間進行加減操作

add_hour=datetime.datetime.now()+datetime.timedelta(hours=1)

Python資料分析 時間模組datetime

目錄2.日期解析方法dateutil.parser.parse 時間模組主要有 datetime.date datetime.datetime datetime.timedelta date主要用於獲取日期,例如獲取當前日期或者特定日期,獲取的日期可以由str方法直接轉化為字串格式 from dat...

python之time模組和datetime模組

優先掌握的時間模組 一.time 時間分為三種格式 1.時間戳 從1970年到現在經歷過的秒數 時間戳的作用 用於時間間隔的計算 import time print time.time 1587949585.395314print time.strftime y m d h m s p 2020 0...

資料庫的timestamp和datetime區別

日期時間型別是用來表示 年 月 日小時 分 秒 資訊的資料型別,其精度精確到 秒 其中包含了年 月 日 小時 分 秒六個資訊,比如 2008 08 08 08 00 00 日期時間型別可以用來表示 北京奧運會開幕式準確時間 上次遲到時間 等資訊。在資料庫中,一般用datetime 來表示日期時間型別...