python中isoweekday和weekday的區(qū)別及說(shuō)明
isoweekday和weekday的區(qū)別
import datetime datetime.datetime.now() 表示當(dāng)前時(shí)間 datetime.datetime.now().isoweekday() # 返回1-7,代表周一到周日,當(dāng)前時(shí)間所在本周第幾天; datetime.datetime.now().weekday() # 返回的0-6,代表周一到周日
另外,標(biāo)準(zhǔn)格式 %w 中,1-6表示周一到周六,0代表周日
import datetime now_time = datetime.datetime.now() # 當(dāng)前時(shí)間 print(now_time) day_num = now_time.isoweekday() # 當(dāng)前時(shí)間所在本周第幾天 print(day_num) monday = (now_time - datetime.timedelta(days=day_num-1)) # 本周周一時(shí)間 print(monday) ---------- 2019-06-20 09:45:07.349007 4 2019-06-17 09:45:07.349007
datetime.date類(lèi)介紹
date類(lèi)是一個(gè)日期類(lèi),由年、月、日組成。
由于Python也是面向?qū)ο缶幊陶Z(yǔ)言,所以針對(duì)類(lèi),就會(huì)有構(gòu)造函數(shù),該類(lèi)的構(gòu)造函數(shù)如下:
class datetime.date(year, month, day):
year: 表示年,范圍[MINYEAR, MAXYEAR],即[1, 9999]month: 表示月,范圍[1, 12]day:一月中第幾天,最大值根據(jù)給定的year,month參數(shù)來(lái)決定。例如閏年2月份有29天
一、date對(duì)象所能表示的最大最小日期,返回的是datetime.date類(lèi)型的對(duì)象
>>> import datetime >>> datetime.date.max datetime.date(9999, 12, 31) >>> print datetime.date.min 0001-01-01 >>>
二、date.today() 函數(shù):返回一個(gè)當(dāng)前本地日期的date類(lèi)型的對(duì)象
>>> datetime.date.today() datetime.date(2018, 1, 16) >>> print datetime.date.today() 2018-01-16 >>>
三、date.fromtimestamp()函數(shù):根據(jù)給定的時(shí)間戳,返回一個(gè)date對(duì)象
>>> import datetime >>> import time >>> now=time.time() >>> print now 1516110787.69 >>> s=datetime.date.fromtimestamp(now) >>> s datetime.date(2018, 1, 16) >>> print s 2018-01-16 >>>
四、date.weekday()函數(shù):參數(shù)必須是一個(gè)date類(lèi)型的對(duì)象,返回該日期是一周中的第幾天。返回值是一個(gè)整型。星期一,返回0;星期二,返回1。。。
>>> s=datetime.date.today() >>> print s 2018-01-16 >>> s datetime.date(2018, 1, 16) >>> type(s) <type 'datetime.date'> >>> d=datetime.date.weekday(s) >>> d 1 >>> print d 1 >>> type(d) <type 'int'> >>>
五、date.isoweekday()函數(shù):該函數(shù)需要一個(gè)datetime.date類(lèi)型的參數(shù)。返回weekday中的星期幾,星期一,返回1;星期二,返回2;以此類(lèi)推。
>>> s=datetime.date.today() >>> print s 2018-01-16 >>> s datetime.date(2018, 1, 16) >>> d=datetime.date.isoweekday(s) >>> d 2 >>> type(d) <type 'int'> >>>
六、date.isocalendar()函數(shù):該函數(shù)需要一個(gè)datetime.date類(lèi)型的參數(shù)。返回date類(lèi)型對(duì)象中的year(年),week(周),weekday(一周中的第幾天),返回值是一個(gè)元組
>>> s=datetime.date.today() >>> print s 2018-01-16 >>> s datetime.date(2018, 1, 16) >>> d=datetime.date.isocalendar(s) >>> d (2018, 3, 2) >>> print d (2018, 3, 2) ? ----代表2018年中的第3周,第三周中的第2天 >>> type(d) <type 'tuple'> >>>
>>> s=datetime.date(2018,1,14) >>> s datetime.date(2018, 1, 14) >>> print s 2018-01-14 >>> d (2018, 3, 2) >>> d=datetime.date.isocalendar(s) >>> d (2018, 2, 7) ? ? ----代表2018年中的第3周,第三周中的第7天 >>>
七、date.strftime(fmt) 返回自定義格式的時(shí)間字符串。fmt是自定義的時(shí)間格式
>>> a=datetime.date.today()
>>> a
datetime.date(2018, 1, 16)
>>> b=a.strftime("%Y-%m-%d %H:%M:%S")
>>> b
'2018-01-16 00:00:00'
>>> print b
2018-01-16 00:00:00
>>> type(b)
<type 'str'>
>>>八、.replace(year, month, day):生成一個(gè)新的日期對(duì)象 用參數(shù)指定的年,月,日代替原有對(duì)象中的屬性。(原有對(duì)象仍保持不變)
>>> date1 datetime.date(2018, 1, 16) >>> date_new=date1.replace(year=2017) >>> date_new datetime.date(2017, 1, 16) >>> date_new=date1.replace(day=30) >>> date_new datetime.date(2018, 1, 30) >>>?
九、日期的其他操作--日期加上一個(gè)時(shí)間間隔(datetime.timedela類(lèi)的對(duì)象)
>>> now=datetime.date.today() >>> now datetime.date(2018, 1, 16) >>> print now 2018-01-16 >>> b=datetime.timedelta(days=10) >>> b datetime.timedelta(10) >>> type(b) <type 'datetime.timedelta'> >>> print b 10 days, 0:00:00 >>> print now+b 2018-01-26 >>> print now-b 2018-01-06 >>> print now-b-b 2017-12-27 >>>
十、日期的其他操作--兩個(gè)date類(lèi)型對(duì)象相減。返回兩個(gè)日期的間隔對(duì)象,即:datetime.timedelta類(lèi)型的對(duì)象
>>> date1=datetime.date.today() >>> date2=date1.replace(day=19) >>> print date1 2018-01-16 >>> print date2 2018-01-19 >>> print type(date1),type(date2) <type 'datetime.date'> <type 'datetime.date'> >>> print date2-date1 3 days, 0:00:00 >>> print date1-date2 -3 days, 0:00:00 >>> print date2+datetime.timedelta(days=35) 2018-02-23 >>> print type(date2-date1) <type 'datetime.timedelta'> >>>
十一、日期的其它操作--比較日期大小
date1 < date2 返回比較結(jié)果布爾值,真返回True,假返回False
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
WxPython界面利用pubsub如何實(shí)現(xiàn)多線程控制
這篇文章主要介紹了WxPython界面利用pubsub如何實(shí)現(xiàn)多線程控制,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-11-11
python連接mysql數(shù)據(jù)庫(kù)并讀取數(shù)據(jù)的實(shí)現(xiàn)
這篇文章主要介紹了python連接mysql數(shù)據(jù)庫(kù)并讀取數(shù)據(jù)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09
Python中用try-except-finally處理異常問(wèn)題
這篇文章主要介紹了Python中用try-except-finally處理異常問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-12-12
Python中easy_install 和 pip 的安裝及使用
本篇文章主要介紹了Python中easy_install 和 pip 的安裝及使用,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06
Python被遠(yuǎn)程主機(jī)強(qiáng)制關(guān)閉后自動(dòng)重新運(yùn)行進(jìn)程的示例
要實(shí)現(xiàn)Python程序在被遠(yuǎn)程主機(jī)強(qiáng)制關(guān)閉后能夠自動(dòng)重新運(yùn)行,我們可以采用幾種方法,但最直接且常用的方法之一是結(jié)合操作系統(tǒng)級(jí)的工具或腳本,這篇文章主要介紹了Python被遠(yuǎn)程主機(jī)強(qiáng)制關(guān)閉后怎么自動(dòng)重新運(yùn)行進(jìn)程,需要的朋友可以參考下2024-08-08
Python數(shù)據(jù)類(lèi)型--字典dictionary
這篇文章主要介紹了Python數(shù)據(jù)類(lèi)型字典dictionary,字典是另一種可變?nèi)萜髂P?,且可存?chǔ)任意類(lèi)型對(duì)象。下面詳細(xì)內(nèi)容需要的小伙伴可以參考一下,希望對(duì)你有所幫助2022-02-02
Django實(shí)現(xiàn)簡(jiǎn)單登錄的示例代碼
本文主要介紹了Django實(shí)現(xiàn)簡(jiǎn)單登錄的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-11-11
PyQt教程之自定義組件Switch?Button的實(shí)現(xiàn)
這篇文章主要為大家詳細(xì)介紹了PyQt中如何實(shí)現(xiàn)自定義組件Switch?Button,文中的示例代碼簡(jiǎn)潔易懂,具有一定的學(xué)習(xí)價(jià)值,感興趣的可以了解一下2023-05-05

