精华内容
下载资源
问答
  • 1.首先我们看下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的作用就是协调     最近碰到公 ...

    展开全文
  • 日历模块允许输出类似于...Pythonyeardatescalendar()方法用于获取一年中一个月中整周列表。周列表中条目是天数。这个月以外天数为零。用法: 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()

    展开全文
  • Calendar模块有很广泛方法用来处理年历和月历,例如打印某月月历: 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...
  • @[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内置模块中有很多我们经常使用工具,善用内置模块对于开发人员来说是一项基本技能。今天我们讲一下Python一个时间模块:time,其中有不少非常好用功能哟【89期主题】Python time 模块怎么用?Time ...
  • pythoncalendar模块有什么用发布时间:2020-12-07 10:16:39来源:亿速云阅读:80作者:小新这篇文章主要介绍pythoncalendar模块有什么用,文中介绍非常详细,具有一定参考价值,感兴趣小伙伴们一定要看完...
  • python的calendar模块有下面三个子类 Calendar TextCalendar HTMLCalendar 1,Calendar 主要用于操作日历 下面这个是一个通常的日历 注意:下面的所有方法中如果前面是iter(iteration(迭代)的缩写)的话...
  • 主要介绍了python使用calendar输出指定年份全年日历方法,涉及Python使用calendar模块操作日期技巧,非常具有实用价值,需要朋友可以参考下
  • calendar模块中提供了三大类:一、calendar.Calendar(firstweekday=0)该类提供了许多生成器,如星期生成器,某月日历生成器二、calendar.TextCalendar(firstweekday=0)该类提供了按月、按年生成日历字符串方法。...
  • python calendar模块

    2021-01-25 18:16:19
    本文介绍Python的calendar模块,是python常用的处理日历的模块。 笔者也介绍了和time模块相关的time模块和datetime模块。
  • calendar模块是与日历相关模块,该模块定义了很多类型,主要包括:Calendar、TextCalendar、HTMLCalendar,其中 Calendar 是 TextCalendar 和 HTMLCalendar 基类,这些类有着十分丰富日历处理方法。calendar ...
  • python使用calendar输出指定年份全年日历方法本文实例讲述了python使用calendar输出指定年份全年日历方法。分享给大家供大家参考。具体实现方法如下:import calendarprint "Show a given years monthly ...
  • 公司会议预订系统使用Outlook,要读取这些预订记录传到部署在阿里云数据库。...模块:pywin32 (http://sourceforge.net/projects/pywin32/)环境:Windows 2008 + Outlook 2013 + Python 2.7....
  • pythoncalendar模块常用方法 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日历模块常用方法如果您想知道某一天是星期几,某个月有多少个周末...那么,日历对您来说非常方便。您办公桌有制作精美日历,手机里也有日历,电脑里也有日历,随手可得。但是,如果我们要在...
  • calendar,是与日历相关模块。calendar模块文件里定义了很多类型,主要有Calendar,TextCalendar以及HTMLCalendar类型。其中,Calendar是TextCalendar与HTMLCalendar基类。该模块文件还对外提供了很多方法,例如...
  • import calendar calendar.setfirstweekday(0) # 设置...c = calendar.calendar(2020) # 获取某年日历 print© print(calendar.month(2020, 1)) # 获取某年某月日历 print(calendar.isleap(2020)) # 判断某年...
  • 跟日历相关模块import calendar# calendar : 获取一年日历字符串# w = 每个日期之间间隔字符数# l = 每周所占用行数# c = 每个月之间间隔字符数cal = calendar.calendar(2018)print(type(cal))print(cal)...
  • 日历模块允许输出类似于程序日历,并提供与日历...Pythonmonthdayscalendar()方法用于获取一年中一个月中整周列表。用法: monthdayscalendar(year, month)参数:year: year of the calendarmonth: month o...
  • 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程序中获取事件列表,但是我无法理解oauth大量文档。在这就是我正在尝试代码。它一半是零碎。谁能帮我修好这个吗import gflagsimport httplib2from apiclient.discovery import ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,182
精华内容 872
关键字:

python的calendar

python 订阅