python如何只獲取日期-創(chuàng)新互聯(lián)

導(dǎo)讀python只獲取日期,要用到的是python的內(nèi)置模塊,time模塊。

顧名思義,這是一個(gè)和時(shí)間有關(guān)的模塊。

我們擁有10年網(wǎng)頁(yè)設(shè)計(jì)和網(wǎng)站建設(shè)經(jīng)驗(yàn),從網(wǎng)站策劃到網(wǎng)站制作,我們的網(wǎng)頁(yè)設(shè)計(jì)師為您提供的解決方案。為企業(yè)提供成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站、微信開(kāi)發(fā)、小程序設(shè)計(jì)、手機(jī)網(wǎng)站制作設(shè)計(jì)、H5場(chǎng)景定制、等業(yè)務(wù)。無(wú)論您有什么樣的網(wǎng)站設(shè)計(jì)或者設(shè)計(jì)方案要求,我們都將富于創(chuàng)造性的提供專業(yè)設(shè)計(jì)服務(wù)并滿足您的需求。

python如何只獲取日期

首先導(dǎo)入time模塊。

import time
python如何只獲取日期
第一步要做的就是從1970紀(jì)元后到目前為止度過(guò)的秒數(shù)(浮點(diǎn)類型)。

其實(shí)想要獲得這個(gè)秒數(shù),只有一個(gè)方法,就是通過(guò)time模塊內(nèi)的time方法來(lái)獲得。

即time.time()

python如何只獲取日期
但是,time.time返回的這個(gè)高精度浮點(diǎn)數(shù)我們并不能準(zhǔn)確的得到我們想要的當(dāng)前時(shí)間。我們只知道這是從1970到目前為止已經(jīng)過(guò)了多少秒。

這里我們還需要使用一個(gè)方法來(lái)把秒數(shù)變成當(dāng)前的時(shí)間戳。

這時(shí)我們就要用到另外一個(gè)方法,localtime方法,該方法的參數(shù)為我們剛剛所說(shuō)的1970年到目前為止的秒數(shù),返回值為一個(gè)叫struct_time結(jié)構(gòu)體,如果不懂什么叫結(jié)構(gòu)體,沒(méi)關(guān)系,也可以理解為localtime方法返回一個(gè)struct_time對(duì)象。

time.localtime(time.time())

可以看到localtime方法的返回結(jié)果,從單詞的字面上我們也能大概了解到:

前綴tm為time,year為年份,mon為月份,mday為日,hour為時(shí),min為分,sec為秒等等
python如何只獲取日期
但是我們想要的并不是這種結(jié)果,我們想要獲得一個(gè)易于理解的數(shù)據(jù)。

常見(jiàn)的asctime類型,例如顯示結(jié)果如Wed Feb 13 15:46:11 2018

如果小伙伴常用 Linux對(duì)這種類型顯然不會(huì)陌生,在linux上,我們使用date 命令,不進(jìn)行時(shí)間格式化的話,就會(huì)輸出這種形式的時(shí)間。

例如小編這里虛擬機(jī)內(nèi)的linux,運(yùn)行date的輸出結(jié)果如圖。

格式為:星期幾 月份 日數(shù) 時(shí):分:秒 年份

注意的是,在linux上的date默認(rèn)會(huì)輸出時(shí)間區(qū)域,例如默認(rèn)的美國(guó)時(shí)間EDT,或者修改為我們大陸的北京時(shí)間CTS。
python如何只獲取日期
這里提供兩種方法進(jìn)行struct_time數(shù)據(jù)格式化。

第一種就是第4步講述的asctime格式,我們調(diào)用time模塊內(nèi)的asctime方法即可,參數(shù)為struct_time對(duì)象數(shù)據(jù),返回字符串,即asctime格式當(dāng)前日期時(shí)間。

time.asctime(time.localtime(time.time()))
'Wed Apr 4 20:27:15 2018'
翻譯成中文是:
星期三 四月 4 20:27:15 2018

python如何只獲取日期
還有一個(gè)數(shù)據(jù)格式化的方法是time模塊內(nèi)提供的strftime方法。

str time.strftime(格式轉(zhuǎn)化字符,時(shí)間戳)

格式轉(zhuǎn)化字符如下:

%y 兩位數(shù)的年份表示(00-99)
%Y 四位數(shù)的年份表示(000-9999)
%m 月份(01-12)
%d 月內(nèi)中的一天(0-31)
%H 24小時(shí)制小時(shí)數(shù)(0-23)
%I 12小時(shí)制小時(shí)數(shù)(01-12)
%M 分鐘數(shù)(00=59)
%S 秒(00-59)
%a 本地簡(jiǎn)化星期名稱
%A 本地完整星期名稱
%b 本地簡(jiǎn)化的月份名稱
%B 本地完整的月份名稱
%c 本地相應(yīng)的日期表示和時(shí)間表示
%j 年內(nèi)的一天(001-366)
%p 本地A.M.或P.M.的等價(jià)符
%U 一年中的星期數(shù)(00-53)星期天為星期的開(kāi)始
%w 星期(0-6),星期天為星期的開(kāi)始
%W 一年中的星期數(shù)(00-53)星期一為星期的開(kāi)始
%x 本地相應(yīng)的日期表示
%X 本地相應(yīng)的時(shí)間表示
%Z 當(dāng)前時(shí)區(qū)的名稱
%% %號(hào)本身
這里常用的小編就進(jìn)行了加粗,其實(shí)常用的就是這幾個(gè)。一定要記住的是:
%Y = 年,%m = 月,%d = 日,%H = 24制時(shí),%M = 分,%S = 秒。

那么知道轉(zhuǎn)化符的意義之后,我們做起來(lái)就很簡(jiǎn)單了。

例如我們可以獲得當(dāng)前時(shí)間和日期,然后獲得當(dāng)前是一年中的第幾天,然后獲得當(dāng)前的時(shí)區(qū)

time.strftime("當(dāng)前日期:%Y年%m月%d日",time.localtime(time.time()))

#獲得當(dāng)前日期

time.strftime("當(dāng)前時(shí)間:%H時(shí)%M分%S秒",time.localtime(time.time()))

#獲得當(dāng)前時(shí)間

time.strftime("今天是%Y年的第%j天,時(shí)區(qū)為%Z",time.localtime(time.time()))

代碼只能在python3中有效運(yùn)行,python2需要使用print輸出(否則中文會(huì)變成16進(jìn)制字符)。
python如何只獲取日期
python2運(yùn)行如下,加上print即可:

print(time.strftime("當(dāng)前日期:%Y年%m月%d日",time.localtime(time.time())))

#獲得當(dāng)前日期

print(time.strftime("當(dāng)前時(shí)間:%H時(shí)%M分%S秒",time.localtime(time.time())))

#獲得當(dāng)前時(shí)間

print(time.strftime("今天是%Y年的第%j天,時(shí)區(qū)為%Z",time.localtime(time.time())))

python如何只獲取日期

本文原創(chuàng)地址: https://www.linuxprobe.com/date-and-time.html

新聞標(biāo)題:python如何只獲取日期-創(chuàng)新互聯(lián)
網(wǎng)站路徑:http://bm7419.com/article34/dpdcpe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序、用戶體驗(yàn)、虛擬主機(jī)、外貿(mào)建站營(yíng)銷型網(wǎng)站建設(shè)、網(wǎng)站策劃

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)