-
python的calendar_每日一学-python calendar
2020-12-08 14:38:061.首先我们看下calendar的内置函数和相关的属性:import calendardir(calendar)['Calendar', 'EPOCH', 'FRIDAY', 'February', 'HTMLCalendar', 'IllegalMonthError', 'IllegalWeekdayError', 'January', '...1.首先我们看下calendar的内置函数和相关的属性:
import calendar
dir(calendar)
['Calendar', 'EPOCH', 'FRIDAY', 'February', 'HTMLCalendar', 'IllegalMonthError', 'IllegalWeekdayError', 'January', 'LocaleHTMLCalendar', 'LocaleTextCalendar', 'MONDAY', 'SATURDAY', 'SUNDAY', 'THURSDAY', 'TUESDAY', 'TextCalendar', 'WEDNESDAY', '_EPOCH_ORD', '__all__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', '_colwidth', '_locale', '_localized_day', '_localized_month', '_spacing', 'c', 'calendar', 'datetime', 'day_abbr', 'day_name', 'different_locale', 'error', 'firstweekday', 'format', 'formatstring', 'isleap', 'leapdays', 'main', 'mdays', 'month', 'month_abbr', 'month_name', 'monthcalendar', 'monthrange', 'prcal', 'prmonth', 'prweek', 'repeat', 'setfirstweekday', 'sys', 'timegm', 'week', 'weekday', 'weekheader']
2、calendar.calendar(year,w=2,l=1,c=6)
返回一个多行字符串格式的year年年历,3个月一行,间隔距离为c。每日宽度间隔为w字符。每行长度为21* W+18+2* C。l是每星期行数。
import calendar
print(calendar.calendar(2018))
3、calendar.firstweekday( )
返回当前每周起始日期的设置。默认情况下,首次载入caendar模块时返回0,即星期一。
calendar.firstweekday()
0
4、calendar.isleap(year) 是闰年返回True,否则为false。
calendar.isleap(2020)
True
calendar.isleap(2021)
False
5、calendar.leapdays(y1,y2) 返回在Y1,Y2两年之间的闰年总数。
leapdays后面两个参数,实际抽取时,不包含第二个参数。即第二个参数即使是闰年,也不做统计
calendar.leapdays(2020,2021)
1
calendar.leapdays(2020,2024)
1
calendar.leapdays(2020,2025)
2
6、calendar.month(year,month,w=2,l=1)
返回一个多行字符串格式的year年month月日历,两行标题,一周一行。每日宽度间隔为w字符。每行的长度为7* w+6。l是每星期的行数。
calendar.month(2020,8,0,0)
' August 2020\nMo Tu We Th Fr Sa Su\n 1 2\n 3 4 5 6 7 8 9\n10 11 12 13 14 15 16\n17 18 19 20 21 22 23\n24 25 26 27 28 29 30\n31\n'
7、calendar.monthcalendar(year,month)
返回一个整数的单层嵌套列表。每个子列表装载代表一个星期的整数。Year年month月外的日期都设为0;范围内的日子都由该月第几日表示,从1开始。
calendar.monthcalendar(2020,8)
[[0, 0, 0, 0, 0, 1, 2], [3, 4, 5, 6, 7, 8, 9], [10, 11, 12, 13, 14, 15, 16], [17, 18, 19, 20, 21, 22, 23], [24, 25, 26, 27, 28, 29, 30], [31, 0, 0, 0, 0, 0, 0]]
8、calendar.monthrange(year,month)
返回两个整数。第一个是该月的星期几的日期码,第二个是该月的日期码。日从0(星期一)到6(星期日);月从1到12。
calendar.monthrange(2020,8)
(5, 31)
9、calendar.prcal(year,w=2,l=1,c=6)
相当于 print calendar.calendar(year,w,l,c).
10、calendar.prmonth(year,month,w=2,l=1)
相当于 print calendar.calendar(year,w,l,c)。
11、calendar.setfirstweekday(weekday)
设置每周的起始日期码。0(星期一)到6(星期日)。
>>> import calendar
>>> calendar.firstweekday ()
0
>>> calendar.setfirstweekday(6)
>>> calendar.firstweekday()
6
12、calendar.weekday(year,month,day)
返回给定日期的日期码。0(星期一)到6(星期日)。月份为 1(1月)到 12(12月)
calendar.weekday(2020,8,28)
4
calendar.weekday(2020,8,31)
0
calendar.weekday(2020,8,30)
6
calendar.weekday(2020,8,30) +1
7
小白学 Python(22):time 和 calendar 模块简单使用
人生苦短,我选Python 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 小白学 Python(3):基础数据类型(下) 小白学 Python(4):变 ...
一步一步学Python(2) 连接多台主机执行脚本
最近在客户现场,每日都需要巡检大量主机系统的备库信息.如果一台台执行,时间浪费的就太冤枉了. 参考同事之前写的一个python脚本,配合各主机上写好的shell检查脚本,实现一次操作得到所有巡检结果. ...
小白学 Python(23):Excel 基础操作(上)
人生苦短,我选Python 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 小白学 Python(3):基础数据类型(下) 小白学 Python(4):变 ...
小白学 Python(24):Excel 基础操作(下)
人生苦短,我选Python 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 小白学 Python(3):基础数据类型(下) 小白学 Python(4):变 ...
小白学 Python 数据分析(21):pyecharts 好玩的图表(系列终篇)
人生苦短,我用 Python 前文传送门: 小白学 Python 数据分析(1):数据分析基础 小白学 Python 数据分析(2):Pandas (一)概述 小白学 Python 数据分析(3):P ...
【Python五篇慢慢弹】快速上手学python
快速上手学python 作者:白宁超 2016年10月4日19:59:39 摘要:python语言俨然不算新技术,七八年前甚至更早已有很多人研习,只是没有现在流行罢了.之所以当下如此盛行,我想肯定是多 ...
<;-0基础学python.第一课->;
初衷:我电脑里面的歌曲很久没换了,我想听一下新的歌曲,把他们下载下来听,比如某个榜单的,但是一首一首的点击下载另存为真的很恶心 所以我想有没有办法通过程序的方式来实现,结果还真的有,而且网上已经有有人 ...
学Python后到底能干什么?
Python是一种什么语言? Python是一种计算机程序设计语言.你可能已经听说过很多种流行的编程语言,比如非常难学的C语言,非常流行的Java语言,适合初学者的Basic语言,适合网页编程的Jav ...
关于智普 - 千人免费学|Python培训|国内最权威python培训|html5
关于智普 - 千人免费学|Python培训|国内最权威python培训|html5 智普教育隶属于北京顶嵌开源科技有限公司,成立于2008年. 智普开源是基于Linux系统的互联网开源学习平台,讲求务 ...
随机推荐
[转载]ARM协处理器CP15寄存器详解
用于系统存储管理的协处理器CP15 原地址:http://blog.csdn.net/gameit/article/details/13169405 MCR{cond} coproc,opc ...
urllib2.urlopen超时问题
urllib2.urlopen超时问题 没有设置timeout参数,结果在网络环境不好的情况下,时常出现read()方法没有任何反应的问题,程序卡死在read()方法里,搞了大半天,才找到问题,给ur ...
LeetCode——Remove Duplicates from Sorted Array
Given a sorted array, remove the duplicates in place such that each element appear only once and ret ...
Grafana+Prometheus系统监控之MySql
架构 grafana和prometheus之前安装配置过,见:Grafana+Prometheus打造全方位立体监控系统 MySql安装 MySql的地位和重要性就不言而喻了,作为开源产品深受广大中小 ...
CSS学习笔记四:下拉选择框以及其动画特效
以前学的只是了解了css的一些基本属性,在做项目的时候都是直接使用bootstrap响应式来写项目,这样子很方便,很快捷,但是在自己看来还是有一点缺陷的,毕竟,我很多时候不怎么清楚它里面的具体运作.所 ...
Beta冲刺 6
前言 队名:拖鞋旅游队 组长博客:https://www.cnblogs.com/Sulumer/p/10129063.html 作业博客:https://edu.cnblogs.com/campus ...
ID绘图工具的使用5.29
1.按住ALT拖动矩形工具,以中心绘制矩形. 绘制矩形的过程中,按住空格键可以调整矩形的位置. 2选择矩形工具,单击,可以精确输入尺寸. 3“窗口‘”信息“面板调出来.这样在绘制的时候可以边绘制边看 ...
selenium(七)expected_conditions EC
判断一个元素是否存在,如何判断alert弹窗出来了,如何判断动态的元素等等一系列的判断,在selenium的expected_conditions模块收集了一系列的场景判断方法, 一.功能介绍和翻译 ...
kbmmw 5.06.00 beta 发布
原生.高效.可扩展.跨平台通信库来了. we are happy to announce v5.06.00 BETA of our popular middleware for Delphi and ...
关于.net服务启动注册到zookeeper,但是注册节点20分钟自动消失解决办法
ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,作用简单描述就是相当于一个中介,服务提供者将服务注册到zk,服务调用者直接从zk获取,zk的作用就是协调 最近碰到公 ...
-
python的calendar_Python calendar yeardatescalendar()用法及代码示例
2020-12-08 14:37:57日历模块允许输出类似于...Python中的yeardatescalendar()方法用于获取一年中一个月中的整周列表。周列表中的条目是天数。这个月以外的天数为零。用法: yeardatescalendar(year, width)参数:year: year of the ...日历模块允许输出类似于程序的日历,并提供与日历相关的其他有用功能。 “日历”模块中定义的函数和类使用理想化的日历,当前的公历日历在两个方向上都无限期扩展。
Python中的yeardatescalendar()方法用于获取一年中一个月中的整周列表。周列表中的条目是天数。这个月以外的天数为零。
用法: yeardatescalendar(year, width)
参数:
year: year of the calendar
width: [Default:3] number of months in each row.
返回: a list of month rows.
代码1:
# Python program to demonstrate working
# of yeardatescalendar() method
# importing calendar module
import calendar
obj = calendar.Calendar()
year = 2016
# default value of width is 3
# priting with yeardatescalendar
print(obj.yeardatescalendar(year))
输出:
[[[[datetime.date(2018, 1, 1), datetime.date(2018, 1, 2), datetime.date(2018, 1, 3), datetime.date(2018, 1, 4), datetime.date(2018, 1, 5), datetime.date(2018, 1, 6), datetime.date(2018, 1, 7)], [datetime.date(2018, 1, 8), datetime.date(2018, 1, 9), datetime.date(2018, 1, 10), datetime.date(2018, 1, 11), datetime.date(2018, 1, 12), datetime.date(2018, 1, 13), datetime.date(2018, 1, 14)], [datetime.date(2018, 1, 15), datetime.date(2018, 1, 16), datetime.date(2018, 1, 17), datetime.date(2018, 1, 18), datetime.date(2018, 1, 19), datetime.date(2018, 1, 20), datetime.date(2018, 1, 21)], [datetime.date(2018, 1, 22), datetime.date(2018, 1, 23), datetime.date(2018, 1, 24), datetime.date(2018, 1, 25), datetime.date(2018, 1, 26), datetime.date(2018, 1, 27), datetime.date(2018, 1, 28)],
. . . . .
[datetime.date(2018, 12, 17), datetime.date(2018, 12, 18), datetime.date(2018, 12, 19), datetime.date(2018, 12, 20), datetime.date(2018, 12, 21), datetime.date(2018, 12, 22), datetime.date(2018, 12, 23)], [datetime.date(2018, 12, 24), datetime.date(2018, 12, 25), datetime.date(2018, 12, 26), datetime.date(2018, 12, 27), datetime.date(2018, 12, 28), datetime.date(2018, 12, 29), datetime.date(2018, 12, 30)], [datetime.date(2018, 12, 31), datetime.date(2019, 1, 1), datetime.date(2019, 1, 2), datetime.date(2019, 1, 3), datetime.date(2019, 1, 4), datetime.date(2019, 1, 5), datetime.date(2019, 1, 6)]]]]
请注意,输出中的星期是七个datetime.date对象的列表。
代码2:迭代周表
# Python program to demonstrate working
# of yeardatescalendar() method
# importing calendar module
import calendar
obj = calendar.Calendar()
# iteratign with yeardatescalendar
for day in obj.yeardatescalendar(2018, 1):
print(day)
输出:
[[[datetime.date(2018, 1, 1), datetime.date(2018, 1, 2), datetime.date(2018, 1, 3), datetime.date(2018, 1, 4) . . . datetime.date(2018, 1, 31), datetime.date(2018, 2, 1), datetime.date(2018, 2, 2), datetime.date(2018, 2, 3), datetime.date(2018, 2, 4)]]]
. . . .
[[[datetime.date(2018, 11, 26), datetime.date(2018, 11, 27), datetime.date(2018, 11, 28), datetime.date(2018, 11, 29), datetime.date(2018, 11, 30), datetime.date(2018, 12, 1), datetime.date(2018, 12, 2)], [datetime.date(2018, 12, 3). . .datetime.date(2018, 12, 29), datetime.date(2018, 12, 30)], [datetime.date(2018, 12, 31), datetime.date(2019, 1, 1), datetime.date(2019, 1, 2), datetime.date(2019, 1, 3), datetime.date(2019, 1, 4), datetime.date(2019, 1, 5), datetime.date(2019, 1, 6)]]]
-
关于python的calendar包打印日历
2016-09-23 11:46:33背景 最近又开始捡起之前看得python,...我的python版本3.4.3. 场景1: 没有什么特殊需求,直接输出日历。代码如下:# -*- encoding = utf-8 -*- import calendar print ("Below is year 2016 calendar: ") for i i背景
最近又开始捡起之前看得python,calendar这个之前没有看到这,今早看到了,想进一步学习一下。
我的python版本3.4.3.
场景1:
没有什么特殊需求,直接输出日历。代码如下:
# -*- encoding = utf-8 -*- import calendar print ("Below is year 2016 calendar: ") for i in range(1,13): cal = calendar.month(2016, i) print(cal)
输出结果如下所示:Below is year 2016 calendar: January 2016 Mo Tu We Th Fr Sa Su 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 February 2016 Mo Tu We Th Fr Sa Su 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 March 2016 Mo Tu We Th Fr Sa Su 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 April 2016 Mo Tu We Th Fr Sa Su 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 May 2016 Mo Tu We Th Fr Sa Su 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 June 2016 Mo Tu We Th Fr Sa Su 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 July 2016 Mo Tu We Th Fr Sa Su 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 August 2016 Mo Tu We Th Fr Sa Su 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 September 2016 Mo Tu We Th Fr Sa Su 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 October 2016 Mo Tu We Th Fr Sa Su 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 November 2016 Mo Tu We Th Fr Sa Su 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 December 2016 Mo Tu We Th Fr Sa Su 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
场景2:看到上面的输出,觉得还是可以优化一下,按季度输出,每一排输出3个月的日历。最终呈现 4X3 的格局。查看了网上资料,参考了一下Python 3.4.3 documentation,代码很简单。如下:
# -*- encoding = utf-8 -*- import calendar print ("Below is year 2016 calendar: ") calendar.prcal(2016)
输出结果:
Below is year 2016 calendar: 2016 January February March Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su 1 2 3 1 2 3 4 5 6 7 1 2 3 4 5 6 4 5 6 7 8 9 10 8 9 10 11 12 13 14 7 8 9 10 11 12 13 11 12 13 14 15 16 17 15 16 17 18 19 20 21 14 15 16 17 18 19 20 18 19 20 21 22 23 24 22 23 24 25 26 27 28 21 22 23 24 25 26 27 25 26 27 28 29 30 31 29 28 29 30 31 April May June Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su 1 2 3 1 1 2 3 4 5 4 5 6 7 8 9 10 2 3 4 5 6 7 8 6 7 8 9 10 11 12 11 12 13 14 15 16 17 9 10 11 12 13 14 15 13 14 15 16 17 18 19 18 19 20 21 22 23 24 16 17 18 19 20 21 22 20 21 22 23 24 25 26 25 26 27 28 29 30 23 24 25 26 27 28 29 27 28 29 30 30 31 July August September Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su 1 2 3 1 2 3 4 5 6 7 1 2 3 4 4 5 6 7 8 9 10 8 9 10 11 12 13 14 5 6 7 8 9 10 11 11 12 13 14 15 16 17 15 16 17 18 19 20 21 12 13 14 15 16 17 18 18 19 20 21 22 23 24 22 23 24 25 26 27 28 19 20 21 22 23 24 25 25 26 27 28 29 30 31 29 30 31 26 27 28 29 30 October November December Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su 1 2 1 2 3 4 5 6 1 2 3 4 3 4 5 6 7 8 9 7 8 9 10 11 12 13 5 6 7 8 9 10 11 10 11 12 13 14 15 16 14 15 16 17 18 19 20 12 13 14 15 16 17 18 17 18 19 20 21 22 23 21 22 23 24 25 26 27 19 20 21 22 23 24 25 24 25 26 27 28 29 30 28 29 30 26 27 28 29 30 31 31
问题:
1.python中的range()是左闭右开的范围,即[1,13)这样的意思,起初写的是range(1,12),少打印了12月份的信息。
2.print(calendar.prcal(2016))打印的最后结果输出了一个None字符,不知道什么原因,最后直接calendar.prcal(2016)进行打印。
询问了别人,大体明白了为什么了。calendar.prcal(year)就像自身内部已经调用了一个 print了,就会出现这个问题。比如下面的:
>>> print (print ("hello")) hello None
实质的原因是,calendar.prcal(year)里直接print了。证据如下:>>> help(calendar.prcal) Help on method pryear in module calendar: pryear(theyear, w=0, l=0, c=6, m=3) method of calendar.TextCalendar instance Print a year's calendar.
而print(calendar.month(2016,3))时没有打印出none,原因是方法里是一个return。如下:>>> help(calendar.month) Help on method formatmonth in module calendar: formatmonth(theyear, themonth, w=0, l=0) method of calendar.TextCalendar instance Return a month's calendar string (multi-line).
场景3:作为中国人,大家默认周一才是每周的开始,而西方人则认为周天是每周的开始。尝试修改代码,调查发现,calendar中有一个setfirstweekday()的方法,weekday的范围是 0 (Monday) to 6 (Sunday).代码如下:
# -*- encoding = utf-8 -*- import calendar print ("Below is year 2016 calendar: ") calendar.setfirstweekday(6) calendar.prcal(2016)
输出如下:
Below is year 2016 calendar: 2016 January February March Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa 1 2 1 2 3 4 5 6 1 2 3 4 5 3 4 5 6 7 8 9 7 8 9 10 11 12 13 6 7 8 9 10 11 12 10 11 12 13 14 15 16 14 15 16 17 18 19 20 13 14 15 16 17 18 19 17 18 19 20 21 22 23 21 22 23 24 25 26 27 20 21 22 23 24 25 26 24 25 26 27 28 29 30 28 29 27 28 29 30 31 31 April May June Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa 1 2 1 2 3 4 5 6 7 1 2 3 4 3 4 5 6 7 8 9 8 9 10 11 12 13 14 5 6 7 8 9 10 11 10 11 12 13 14 15 16 15 16 17 18 19 20 21 12 13 14 15 16 17 18 17 18 19 20 21 22 23 22 23 24 25 26 27 28 19 20 21 22 23 24 25 24 25 26 27 28 29 30 29 30 31 26 27 28 29 30 July August September Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa 1 2 1 2 3 4 5 6 1 2 3 3 4 5 6 7 8 9 7 8 9 10 11 12 13 4 5 6 7 8 9 10 10 11 12 13 14 15 16 14 15 16 17 18 19 20 11 12 13 14 15 16 17 17 18 19 20 21 22 23 21 22 23 24 25 26 27 18 19 20 21 22 23 24 24 25 26 27 28 29 30 28 29 30 31 25 26 27 28 29 30 31 October November December Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa 1 1 2 3 4 5 1 2 3 2 3 4 5 6 7 8 6 7 8 9 10 11 12 4 5 6 7 8 9 10 9 10 11 12 13 14 15 13 14 15 16 17 18 19 11 12 13 14 15 16 17 16 17 18 19 20 21 22 20 21 22 23 24 25 26 18 19 20 21 22 23 24 23 24 25 26 27 28 29 27 28 29 30 25 26 27 28 29 30 31 30 31
扩展:
1. 调查对比了一下python2.6跟python3.4.3中,关于calendar.prcal方法入力参数的取值上限,python2.6是9998,python3.4.3是9999,但当入力是9999的时候,python3.4.3的结果显示有问题,12月份的最后一周的启示不正确。
python2.6
>>> calendar.prcal(9998) 9998 January February March Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa 1 2 3 1 2 3 4 5 6 7 1 2 3 4 5 6 7 4 5 6 7 8 9 10 8 9 10 11 12 13 14 8 9 10 11 12 13 14 11 12 13 14 15 16 17 15 16 17 18 19 20 21 15 16 17 18 19 20 21 18 19 20 21 22 23 24 22 23 24 25 26 27 28 22 23 24 25 26 27 28 25 26 27 28 29 30 31 29 30 31 April May June Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa 1 2 3 4 1 2 1 2 3 4 5 6 5 6 7 8 9 10 11 3 4 5 6 7 8 9 7 8 9 10 11 12 13 12 13 14 15 16 17 18 10 11 12 13 14 15 16 14 15 16 17 18 19 20 19 20 21 22 23 24 25 17 18 19 20 21 22 23 21 22 23 24 25 26 27 26 27 28 29 30 24 25 26 27 28 29 30 28 29 30 31 July August September Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa 1 2 3 4 1 1 2 3 4 5 5 6 7 8 9 10 11 2 3 4 5 6 7 8 6 7 8 9 10 11 12 12 13 14 15 16 17 18 9 10 11 12 13 14 15 13 14 15 16 17 18 19 19 20 21 22 23 24 25 16 17 18 19 20 21 22 20 21 22 23 24 25 26 26 27 28 29 30 31 23 24 25 26 27 28 29 27 28 29 30 30 31 October November December Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa 1 2 3 1 2 3 4 5 6 7 1 2 3 4 5 4 5 6 7 8 9 10 8 9 10 11 12 13 14 6 7 8 9 10 11 12 11 12 13 14 15 16 17 15 16 17 18 19 20 21 13 14 15 16 17 18 19 18 19 20 21 22 23 24 22 23 24 25 26 27 28 20 21 22 23 24 25 26 25 26 27 28 29 30 31 29 30 27 28 29 30 31
python3.4.3 -9999
>>> calendar.prcal(9999) 9999 January February March Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su 1 2 3 1 2 3 4 5 6 7 1 2 3 4 5 6 7 4 5 6 7 8 9 10 8 9 10 11 12 13 14 8 9 10 11 12 13 14 11 12 13 14 15 16 17 15 16 17 18 19 20 21 15 16 17 18 19 20 21 18 19 20 21 22 23 24 22 23 24 25 26 27 28 22 23 24 25 26 27 28 25 26 27 28 29 30 31 29 30 31 April May June Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su 1 2 3 4 1 2 1 2 3 4 5 6 5 6 7 8 9 10 11 3 4 5 6 7 8 9 7 8 9 10 11 12 13 12 13 14 15 16 17 18 10 11 12 13 14 15 16 14 15 16 17 18 19 20 19 20 21 22 23 24 25 17 18 19 20 21 22 23 21 22 23 24 25 26 27 26 27 28 29 30 24 25 26 27 28 29 30 28 29 30 31 July August September Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su 1 2 3 4 1 1 2 3 4 5 5 6 7 8 9 10 11 2 3 4 5 6 7 8 6 7 8 9 10 11 12 12 13 14 15 16 17 18 9 10 11 12 13 14 15 13 14 15 16 17 18 19 19 20 21 22 23 24 25 16 17 18 19 20 21 22 20 21 22 23 24 25 26 26 27 28 29 30 31 23 24 25 26 27 28 29 27 28 29 30 30 31 October November December Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su 1 2 3 1 2 3 4 5 6 7 1 2 3 4 5 4 5 6 7 8 9 10 8 9 10 11 12 13 14 6 7 8 9 10 11 12 11 12 13 14 15 16 17 15 16 17 18 19 20 21 13 14 15 16 17 18 19 18 19 20 21 22 23 24 22 23 24 25 26 27 28 20 21 22 23 24 25 26 25 26 27 28 29 30 31 29 30 27 28 29 30 31
但使用calender.month(9999,12)单独打印的时候,就没有问题,晕菜,给report@bugs.python.org发邮件去确认,希望是我的问题。
>>> print (calendar.month(9999,12)) December 9999 Mo Tu We Th Fr Sa Su 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
具体的现象可以参考这个链接:http://bugs.python.org/file44788/20160923154147.png
现在已经确认,就是一个BUG,可惜自己刚学python,只能充当吃瓜群众了,看着大牛人在BUG list中激烈的讨论。
bug url
BUG-28253:calendar.prcal(9999) output has a problem
http://bugs.python.org/issue28253
--- over --- -
python的calendar(日历的学习)
2018-12-29 20:31:21一个总的模块:calendar 模块下有好多类,按数据的性质大致可以分为 迭代器型日历:calendar.Calendar() 文本型日历: calendar.TextCalendar() HTML型日历:clendar.HTMLClendar() 迭代器型日历 类的方法返回的...前言:
一个总的模块:calendar
模块下有好多类,按数据的性质大致可以分为- 迭代器型日历:calendar.Calendar()
- 文本型日历: calendar.TextCalendar()
- HTML型日历:clendar.HTMLClendar()
迭代器型日历
类的方法返回的数据对象都为迭代器。
比如:- iterweekdays():单个的日号
- itermonthdates():有年月日格式,中间-分开。
- itermothdays2()
- itermonthdays():只有单个的日号
- mothdatescalendar():列表形式的年月日
- monthdayscalendar():列表形式的日
- yeardatescalendar():列表形式的年月日
文本型日历
类的方法返回的数据对象都为print格式的文本。
- formatmonth():生成一月的日历表。
- formatyear():生成一月的日历表。
- prmonth():直接输出一月的日历表。
- pryear():直接输出一年的日历表。
HTML型日历
类的方法:
- formatmonth():返回一个月的日历表,HTML文本格式的
- formatyear():返回一年的日历表,HTML文本格式的
- formatyearpage():返回一年的日历表,是以HTML页面来返回的。
附件功能
可以返回指定区域的日期格式:
-
class calendar.LocaleTextCalendar(firstweekday=0, locale=None)
-
class calendar.LocaleHTMLCalendar(firstweekday=0, locale=None)
-
判断是否为闰年:
calendar.leapdays() -
返回星期几:
calendar.weekday(year,month,day):指定某一年,某一月的第几天是星期几? -
返回一个的第一天是星期几,总共有几天
calendar.monthrange() -
…
-
python的calendar日历库使用方法
2021-02-06 10:18:23Calendar模块有很广泛的方法用来处理年历和月历,例如打印某月的月历: import calendar cal = calendar.month(2021, 2) print (cal) February 2021 Mo Tu We Th Fr Sa Su 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15... -
python日历库_python的calendar日历库使用方法
2021-02-10 15:35:23@[toc]获取某月日历Calendar模块有很广泛的方法用来处理年历和月历,例如打印某月的月历:import calendarcal = calendar.month(2021, 2)print (cal)February 2021Mo Tu We Th Fr Sa Su1 2 3 4 5 6 78 9 10 11 12 13... -
Python 的 time 模块怎么用? Python 的 Calendar 模块怎么用
2018-03-01 10:27:42Python内置模块中有很多我们经常使用的工具,善用内置模块对于开发人员来说是一项基本技能。今天我们讲一下Python中的一个时间模块:time,其中有不少非常好用的功能哟【89期主题】Python 的 time 模块怎么用?Time ... -
python中calendar怎么用_python中calendar模块有什么用
2020-12-15 08:18:55python中calendar模块有什么用发布时间:2020-12-07 10:16:39来源:亿速云阅读:80作者:小新这篇文章主要介绍python中calendar模块有什么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完... -
python日期calendar模块相关
2019-11-01 15:01:09python的calendar模块有下面三个子类 Calendar TextCalendar HTMLCalendar 1,Calendar 主要用于操作日历 下面这个是一个通常的日历 注意:下面的所有方法中如果前面是iter(iteration(迭代)的缩写)的话... -
python使用calendar输出指定年份全年日历的方法
2020-09-22 07:07:09主要介绍了python使用calendar输出指定年份全年日历的方法,涉及Python使用calendar模块操作日期的技巧,非常具有实用价值,需要的朋友可以参考下 -
python中calendar模块_python calendar模块
2021-02-03 08:52:06calendar模块中提供了三大类:一、calendar.Calendar(firstweekday=0)该类提供了许多生成器,如星期的生成器,某月日历生成器二、calendar.TextCalendar(firstweekday=0)该类提供了按月、按年生成日历字符串的方法。... -
python calendar模块
2021-01-25 18:16:19本文介绍Python的calendar模块,是python常用的处理日历的模块。 笔者也介绍了和time模块相关的time模块和datetime模块。 -
python calendar模块实例_Python-calendar模块
2020-12-04 21:30:23calendar模块是与日历相关的模块,该模块定义了很多类型,主要包括:Calendar、TextCalendar、HTMLCalendar,其中 Calendar 是 TextCalendar 和 HTMLCalendar 的基类,这些类有着十分丰富的日历处理方法。calendar ... -
python输出日期语句_python使用calendar输出指定年份全年日历的方法
2020-12-04 23:52:57python使用calendar输出指定年份全年日历的方法本文实例讲述了python使用calendar输出指定年份全年日历的方法。分享给大家供大家参考。具体实现方法如下:import calendarprint "Show a given years monthly ... -
python outlook calendar_Python读取Outlook的日历
2020-12-08 14:40:00公司的会议预订系统使用Outlook,要读取这些预订记录传到部署在阿里云的数据库。...模块:pywin32 (http://sourceforge.net/projects/pywin32/)环境:Windows 2008 + Outlook 2013 + Python 2.7.... -
python 中calendar模块应用
2019-12-02 21:06:35python中calendar模块的常用方法 import calendar calendar.isleap(2000) #判断是否是闰年 True calendar.isleap(2100) False calendar.month(2100,12) #查看2100年12的日历 ’ December 2100\nMo Tu We Th Fr Sa... -
python calendar模块实例_Python calendar日历模块的常用方法
2021-02-02 22:17:02Python calendar日历模块的常用方法如果您想知道某一天是星期几,某个月有多少个周末...那么,日历对您来说非常方便。您的办公桌有制作精美的日历,手机里也有日历,电脑里也有日历,随手可得。但是,如果我们要在... -
python中calendar函数怎么用_python模块之calendar方法详细介绍
2020-12-08 14:40:20calendar,是与日历相关的模块。calendar模块文件里定义了很多类型,主要有Calendar,TextCalendar以及HTMLCalendar类型。其中,Calendar是TextCalendar与HTMLCalendar的基类。该模块文件还对外提供了很多方法,例如... -
python中calendar模块的常见使用
2020-04-10 15:14:58import calendar calendar.setfirstweekday(0) # 设置...c = calendar.calendar(2020) # 获取某年的日历 print© print(calendar.month(2020, 1)) # 获取某年某月的日历 print(calendar.isleap(2020)) # 判断某年... -
python中calendar模块常用方法_python的常用模块 -- calendar(日期模块)
2020-12-08 14:42:08跟日历相关的模块import calendar# calendar : 获取一年的日历字符串# w = 每个日期之间的间隔字符数# l = 每周所占用的行数# c = 每个月之间的间隔字符数cal = calendar.calendar(2018)print(type(cal))print(cal)... -
python中calendar函数怎么用_Python calendar monthdayscalendar()用法及代码示例
2020-12-08 14:40:20日历模块允许输出类似于程序的日历,并提供与日历...Python中的monthdayscalendar()方法用于获取一年中一个月中的整周列表。用法: monthdayscalendar(year, month)参数:year: year of the calendarmonth: month o... -
python outlook calendar_Python~Outlook
2020-12-08 14:39:58用python处理outlook邮件按季度将邮件分类,归入新建文件夹2016Q1,2015Q4等等Python读取Outlook的日历#coding:utf-8importwin32com.client as win32RANGE= range(3,8)defoutlook():app= 'Outlook'olook= win32.... -
python专题calendar模块
2020-05-20 08:02:20其中,Calendar是TextCalendar与HTMLCalendar的基类。 公众号:知识追寻者 知识追寻者(Inheriting the spirit of open source, Spreading technology knowledge;) 二 calendar 2.1firstweekday() firstweekday() -
python中calendar_如何在python中使用googlecalendar API
2020-12-08 14:40:32我想从我的日历到python程序中获取事件列表,但是我无法理解oauth的大量文档。在这就是我正在尝试的代码。它的一半是零碎的。谁能帮我修好这个吗import gflagsimport httplib2from apiclient.discovery import ...