Python?calendar模塊詳情
復(fù)習(xí)回顧:
Python 對于時(shí)間日期操作提供了很多方法,我們前面已經(jīng)學(xué)習(xí)了2個(gè)模塊:
- 基于Unix 時(shí)間戳范圍限制在1970~2038年的時(shí)間處理的time模塊
- 提供六個(gè)類對時(shí)間日期更加人性化處理的datetime模塊
在日常生活工作中,除了每一天時(shí)間及日期Python
都提供了具體的模塊來進(jìn)行處理,那么日期的集合要使用什么模塊來處理呢?
Python 專門為了處理日歷提供了calendar日歷模塊。那么,本期我們來學(xué)習(xí)一下calender模塊相關(guān)方法及屬性
1. calendar 模塊概述
calendar
模塊提供與日歷相關(guān)的實(shí)用函數(shù),幫助我們得到與日歷相關(guān)的信息。
1.1calendar 特點(diǎn)
calendar
模塊是基于datetime.date.weekday()
對計(jì)算每一周的周數(shù)calendar
默認(rèn)星期一是每一周的第一天,星期天是一周的最后一天calendar
提供calendar.setfirstweeksday()
來更改指定星期幾為一周的第一天
1.2calendar 類結(jié)構(gòu)
- 我們可以查看
Python
內(nèi)置庫-calendar.py
文件 calendar
主要提供三大類:Calendar
、TextCalendar
、HTMLCalendar
- 其中,
calendar
是TextCalendar
和HTMLCalendar
的基類
1.3calendar 使用步驟
calendar
是內(nèi)置庫,直接使用import
導(dǎo)入
import calendar
2. calendar 相關(guān)方法
2.2calendar 模塊相關(guān)方法
方法 | 說明 |
---|---|
calendar.firstweekday() | 設(shè)置每星期的第一天數(shù)值 |
calendar.isleap(year) | 判斷是閏年,則返回Ture |
calendar.leapdays(y1,y2) | 計(jì)算要y1與y2的閏年數(shù) |
calendar.weekday(year,month,day) | 返回某日是星期幾 |
calendar.weekheader(n) | 星期幾的縮寫名的頭 |
calendar.mothrange(year,month) | 計(jì)算出指定年份的某月第一天是星期幾和天數(shù) |
calendar.prmonth(theyear,themonth,w=0,1=0) | 格式化打印指定年的某月的日歷 |
calendar.month(theyear,themonth,w=0,1=0) | 使用TextCalendar類formation()以多行字符串形式返回月份日歷 |
calendar.prcal(year,w=1,1=0,c=6,m=3) | 格式化打印出整年的日歷 |
calendar.calendar(year,w=1,1=0,c=6,m=3) | 以整年3列的日歷多行字符串的形式的日歷 |
2.3calendar 模塊屬性
方法 | 說明 |
---|---|
calendar.day_name | 當(dāng)前語言環(huán)境下星期幾的數(shù)組 |
calendar.day_abbr | 當(dāng)前語言環(huán)境下星期幾的縮寫 |
calendar.month_name | 當(dāng)前語言下一年的月份數(shù)組 |
calendar.month_abbr | 當(dāng)前語言下一年的月份縮寫 |
2.4calendar 模塊提供5個(gè)類
類方法 | 說明 |
---|---|
calendar.Calendar(firstweekday=0) | 創(chuàng)建Calendar對象,默認(rèn)周一為第一天 |
calendar.TextCalendar(firstweekday=0) | 生成純文本日歷對象 |
calendar.HTMLCalendar(firstweekday=0) | 生成HTML日志對象 |
calendar.LocaleTextCalenda(firstweekday=0,locale=None) | 語言環(huán)境名稱 |
calendar.LocaleHTMLCalendar(firstweekday=0,locale=None) | 語言環(huán)境名稱 |
2.5calendar.Calendar類實(shí)例相關(guān)方法
方法 | 說明 |
---|---|
cal.itermonthdates(year,month) | 返回一個(gè)year年month月的日期的迭代器 |
cal.iterweekdats() | 返回為一星期的數(shù)字的迭代器 |
cal.itermonthdays(year,month) | 返回的日期為當(dāng)月每一天的日期對應(yīng)的天數(shù),對于不在當(dāng)月的日期,會顯示0 |
cal.itermonthdays2(year,month) | 返回一個(gè)由日期和代表星期幾的數(shù)字組成的元組 |
cal.itermonthdays3(year,month) | 返回一個(gè)由年月日組成的元組 |
cal.itermonthdays4(year,month) | 返回一個(gè)由年月日和星期幾的數(shù)字組成的元組 |
cal.monthdatescalendar(year,month) | 返回一個(gè)由datetime.date對象組成的年月的周列表 |
cal.monthdays2calendar(year,month) | 返回一個(gè)由日期數(shù)字和周幾的數(shù)字的二元元組 |
cal.monthdayscalendar(year,month) | 返回一個(gè)由七個(gè)日期數(shù)字的組成周列表 |
cal.yeardatescalendar(year,width=3) | 返回可以用來格式化的指定年月的數(shù)據(jù)列表 |
cal.yeardays2calendar(year,width=3) | 返回用來模式化的指定年月的數(shù)據(jù)。在這個(gè)月的日期為0,周列表由日期和星期數(shù)組成的元組 |
cal.yeardayscalendar(year,width=3) | 返回一個(gè)周列表是日期數(shù)字組成可以用來模式化的指定年月的數(shù)據(jù) |
2.6calendar.TextCalendar類實(shí)例相關(guān)方法
方法 | 說明 |
---|---|
tc.formatmonth(theyear,themonth,w=0,1=0) | 以多行字符串來表示指定年月的日歷 |
tc.prmonth(theyear,themonth,w=0,1=0) | 格式化打印一個(gè)月的日歷 |
tc.formatyear(theyear,w=0,1=1,c=6,m=3) | 返回一個(gè)m列的日歷 |
tc.pryear(theyear,w=0,1=1,c=6,m=3) | 格式化打印一整年的日歷 |
2.7calendar.HTMLCalendar類實(shí)例相關(guān)方法
方法 | 說明 |
---|---|
htl.formatmonth(theyear,themonth,withyear=True) | 返回一個(gè)HTML表格的指定的年月日歷 |
htl.formatyear(theyear,width=3) | 返回HTML指定年份的日歷 |
htl.formatyearpage(theyear,width=3,css='calendar.css',encoding=None) | 返回一個(gè)完整的HTML頁面作為指定的年份日歷 |
2.8calendar.HTMLCalendar類實(shí)例相關(guān)屬性
方法 | 說明 |
---|---|
htl.cssclasses | 星期一到星期天的CSS class 列表 |
htl.cssclass_noday | 工作日的CSS類在上個(gè)月或下個(gè)月發(fā)生 |
htl.cssclasses_weekday_head | 用于標(biāo)題行中工作日名稱的css列表 |
htl.cssclass_month_head | 月份的CSS列表標(biāo)題 |
htl.cssclass_month | 某個(gè)月的月歷CSS類 |
htl.cssclass_year | 某個(gè)年的年歷CSS類 |
htl.cssclasses_year_head | 年歷的CSS列表標(biāo)題 |
3. 實(shí)操
打印2021年年歷
import calendar # 打印2021年歷 print(calendar.calendar(2021))
打印指定某年的月歷
print(calendar.month(2021,11))
4、總結(jié)
我們對calendar模塊日歷相關(guān)的方法的學(xué)習(xí),calendar模塊主要提供3個(gè)主要類Calendar、TextCalendar、HTMLCalendar。我們可以更好地以字符串或者HTML形式打印出指定的日歷。
到此這篇關(guān)于 Python calendar模塊詳情的文章就介紹到這了,更多相關(guān) Python calendar模塊內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python的構(gòu)建工具setup.py的方法使用示例
本篇文章主要介紹了python的構(gòu)建工具setup.py的方法示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-10-10基于Python實(shí)現(xiàn)商場抽獎(jiǎng)小系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了如何利用Python語言實(shí)現(xiàn)一個(gè)簡單的商場抽獎(jiǎng)小系統(tǒng),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下2022-08-08Python實(shí)現(xiàn)隨機(jī)漫步的詳細(xì)過程
隨機(jī)漫步顧名思義每一步都是隨機(jī)的,假設(shè)有一個(gè)點(diǎn),下一步往哪里走,走多遠(yuǎn),這些都沒有明確的表示,完全是隨機(jī)的,最后走到哪里,是由一系列隨機(jī)決策決定的,這篇文章主要給大家介紹了關(guān)于Python實(shí)現(xiàn)隨機(jī)漫步的相關(guān)資料,需要的朋友可以參考下2023-03-03Flask框架debug與配置項(xiàng)的開啟與設(shè)置詳解
這篇文章主要介紹了Flask框架debug與配置項(xiàng)的開啟與設(shè)置,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-09-09Python實(shí)現(xiàn)字符串反轉(zhuǎn)的9種方法(最全)
本文主要介紹了Python實(shí)現(xiàn)字符串反轉(zhuǎn)的9種方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07基于python的漢字轉(zhuǎn)GBK碼實(shí)現(xiàn)代碼
今天想用python調(diào)用百度框計(jì)算的搜過結(jié)果,看到了URL里面的漢字用GBK編碼,雖然可以直接在URL里面加入中文,之前也做過一個(gè)簡體字轉(zhuǎn)GBK碼的python函數(shù),但還是略嫌麻煩,今天改了一下2012-02-02詳解基于Facecognition+Opencv快速搭建人臉識別及跟蹤應(yīng)用
這篇文章主要介紹了詳解基于Facecognition+Opencv快速搭建人臉識別及跟蹤應(yīng)用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-01-01django實(shí)現(xiàn)HttpResponse返回json數(shù)據(jù)為中文
這篇文章主要介紹了django實(shí)現(xiàn)HttpResponse返回json數(shù)據(jù)為中文,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-03-03