Python中日期 時間的運用

2021-10-03 21:43:47 字數 4597 閱讀 9273

python中日期、時間的運用

date、time和datetime

一、簡介

我們在編寫**時,往往涉及到時間和日期的運用。時間日期又是一種特有的格式(),這種格式不像我們常見資料格式容易操作,在使用的時候有諸多不便。例如我們想改變它的顯示樣式,或者按照一定的年、月等特性進行分類。但是我們可以對datetime進行格式轉換後操作。

進行格式轉化後,python中datetime模組變的非常好用。在python中提供了日期格式和字串格式相互轉化的函式strftime()和strptime()

strftime():由日期格式轉化為字串格式的函式

strptime():由字串格式轉化為日期格式的函式

二、datetime模組中的資料型別

在python的標準庫中包含日期(date)和時間(time)資料的資料型別,datetime、time以及calendar模組會被經常用到。datetime以毫秒形式儲存日期和時間,datetime.timedelta表示兩個datetime物件之間的時間差。給datetime物件加上或減去乙個或多個timedelta,會產生乙個新的物件。

三、引入時間日期模組

1、引入datetime

from datetime import datetime

from datetime import timedelta

#生成乙個現在時間日期型別

now = datetime.now()

delta = now - datetime(2017,6,27,10,10,10,10)

print(now,type(now))

#結果:2019-07-07 09:39:59.805549

print(now.date(),type(now.date()))

#結果:2019-07-07

print(now.time(),type(now.time()))

#結果:09:39:59.805549

print(delta,type(delta))

#結果:739 days, 23:29:49.805539

print(delta.days,type(delta.days))

#結果:739 #datetime引數:datetime(year, month, day[, hour[, minute[, second[, microsecond[,tzinfo]]]]])

2、引入time

import time

#time.time()

one = time.time()

print(one)

#結果:1562468537.7579844

two = time.localtime(time.time())

print(two)

#結果:time.struct_time(tm_year=2019, tm_mon=7, tm_mday=7, tm_hour=11, tm_min=2, tm_sec=17, tm_wday=6, tm_yday=188, tm_isdst=0)

print(time.localtime(123456))

#結果:time.struct_time(tm_year=1970, tm_mon=1, tm_mday=2, tm_hour=18, tm_min=17, tm_sec=36, tm_wday=4, tm_yday=2, tm_isdst=0

three = time.ctime(1562467704.0623)

print(three)

#結果:sun jul 7 10:48:24 2019

four = time.mktime((2019, 7, 7, 9, 44, 31, 6, 273, 0))

print(four)

#結果:1562463871.0

five = time.asctime((2019, 7, 7, 10, 48, 24, 6, 273, 0))

five1 = time.asctime(time.localtime(1562467704.0623))

print(five,five1)

#結果:sun jul 7 10:48:24 2019 sun jul 7 10:48:24 2019

six = time.strftime("%y-%m-%d %h:%m:%s", time.localtime())

print(six)

#結果:2019-07-07 11:02:17

print(「時間元祖:」,time.strptime(『2019-7-7 11:32:23』, 『%y-%m-%d %h:%m:%s』))

#結果:時間元祖: time.struct_time(tm_year=2019, tm_mon=7, tm_mday=7, tm_hour=11, tm_min=32, tm_sec=23, tm_wday=6, tm_yday=188, tm_isdst=-1)

eight = 「sun jul 7 10:48:24 2019」

print (time.mktime(time.strptime(eight,"%a %b %d %h:%m:%s %y")))

#結果:1562467704.0

3、時間元組

引入time模組後就不得不提一下時間元組。時間元組就是python函式用乙個元組裝起來的9組數字,這9組數字不是憑空而來,而是根據時間年、月、日……組成,每組資料都有它特定的含義。

時間元組特性表

4、日期、時間格式化符號:

%y 兩位數的年份表示(00-99)

%y 四位數的年份表示(000-9999)

%m 月份(01-12)

%d 月內中的一天(0-31)

%h 24小時制小時數(0-23)

%i 12小時制小時數(01-12)

%m 分鐘數(00=59)

%s 秒(00-59)

%a 本地簡化星期名稱

%a 本地完整星期名稱

%b 本地簡化的月份名稱

%b 本地完整的月份名稱

%c 本地相應的日期表示和時間表示

%j 年內的一天(001-366)

%p 本地a.m.或p.m.的等價符

%u 一年中的星期數(00-53)星期天為星期的開始

%w 星期(0-6),星期天為星期的開始

%w 一年中的星期數(00-53)星期一為星期的開始

%x 本地相應的日期表示

%x 本地相應的時間表示

%z 當前時區的名稱

%% %號本身

四、strptime 和 strftime 函式

時間.strftime(時間格式)

datetime.strptime(字串,時間格式)

示範:datetime.strptime(str,』%y-%m-%d』)

datetime.now().strftime("%y-%m-%d %h:%m:%s")  

1、strptime

from datetime import datetime

s=datetime.strptime(『2019/07/07』,』%y/%m/%d』)

print(s,type(s))

s=datetime.strptime(『2023年7月7日星期日』,』%y年%m月%d日星期日』)

print(s,type(s))

s=datetime.strptime(『2023年7月7日星期日8時42分24秒』,』%y年%m月%d日星期日%h時%m分%s秒』)

print(s,type(s))

s=datetime.strptime(『7/7/2019』,』%m/%d/%y』)

print(s,type(s))

s=datetime.strptime(『7/7/2019 8:42:50』,』%m/%d/%y %h:%m:%s』)

print(s,type(s))

#結果:

2019-07-07 00:00:00

2019-07-07 00:00:00

2019-07-07 08:42:24

2019-07-07 00:00:00

2019-07-07 08:42:50

2、strftime

dt=datetime.now()

s=dt.strftime(』%m/%d/%y %h:%m:%s %p』)

print(s,type(s))

s=dt.strftime(』%a,%b %d,%y』)

print(s,type(s))

txt =(』%s年%s月%s日星期%s %s時%s分%s秒』%(dt.strftime(』%y』),dt.strftime(』%m』),dt.strftime(』%d』),

dt.strftime(』%w』),dt.strftime(』%h』),dt.strftime(』%m』),dt.strftime(』%s』)))

print(txt)

s=dt.strftime(』%b %d,%y』)

print(s,type(s))

結果:07/07/2019 14:57:17 pm

sunday,july 07,2019

2023年07月07日星期0 14時57分17秒

july 07,2019

python 中 日期,時間戳的轉換

一,日期轉換成為時間戳 1,首先需要引入模組,time datetime import time datetime2,把輸入的字元轉換成為陣列 python time strptime 函式根據指定的格式把乙個時間字串解析為時間元組。time.strptime string format tsl 2...

Python中日期和時間的操作

python中,對日期和時間的操作,主要使用這3個內建模組 datetime time 和 calendar 獲取當前時間對應的數字 開發程式時,經常需要獲取兩個 位置在執行時的時間差,比如,我們想知道某個函式執行大概耗費了多少時間,就可以使用time.time 來做。import time bef...

shell中日期時間操作

使用許可權 所有使用者 使用方式 date u d datestr s datestr utc universal date datestr set datestr help version format mmddhhmm cc yy ss 說明 date 能用來顯示或設定系統的日期和時間,在顯示方...