python calendar标准库基础学习

# -*- coding: utf-8 -*-
# 作者:新手
__author__ = ‘Administrator‘
#标准库:日期时间基础学习:calendar:处理日期
#例1
import calendar
c=calendar.TextCalendar(calendar.SUNDAY)
c.prmonth(2015,3)
#prmonth()简单函数,生成一个月的格式文件输出
#TextCalendar()从星期天(为第一天,因为老外是从星期天开始算第一天的)
#利用HTMLCalendar和formatmonth()可以生成一个类似html表格,显示的和纯文本版本大致同样
c=calendar.HTMLCalendar(calendar.SUNDAY)
print c.formatday(7,0)
#不过会用html标记包围,各个表单元格有一个类属性对应星期几,所以可能通过css指定html样式
"""
要使用可用默认格式之外的某种格式生成输出,可以使用calendar计算日期,并把这些值 组织为周和月,然后迭代处理结果,对于这样的任务,它有以下几个属性可以使用:
    weekheader(),MONTHCALENDAR(),(特别有用的:yeardays2calendar(),它会生成一个由<月栏>列表构成的序列,每个列表包含一个月,每个月是一个周列表,周是元组列表,元组由编号(1~31)和星期几(1~6)构成,当月以外的日编号为0)
"""
import pprint
c=calendar.Calendar(calendar.SUNDAY)
data=c.yeardays2calendar(2015,3)
print ‘len(data)          :‘,len(data)
top=data[0]
print‘len(top)            :‘,len(top)
mont=top[0]
print ‘len(mont)          :‘,len(mont)
print ‘mont:‘
pprint.pprint(mont)
#这等价于formatyear()方式
c=calendar.TextCalendar(calendar.SUNDAY)
print c.formatyear(2015,3,1,0)
#day_name,day_abbr,month_name,month_abbr模块属性对于生成定制格式输出很有用(如html输出包含的链接),这些属性会针对当前本地化环境正确的地处配置

#计算日期
#计算中某一天的事件
print u‘计算日期:\n‘
pprint.pprint(calendar.monthcalendar(2015,3))
#有些日期值为0,说明尽管这几天属性另一个月,但与给定的当前月中的几天属于同一个星期

#一周中的第一天默认认为是星期一,可以通过使用setfirstweekday()来改变这个设置,不过由于calenday模块包含了一些常用来索引monthcalendar()返回的日期区间,所以在这片情况下路过这一步会更加方便
#例3
for m in range(1,13):
    c=calendar.monthcalendar(2015,m)
    first_week=c[0]
    second_week=c[1]
    third_week=c[2]
    if first_week[calendar.THURSDAY]:
        data1=second_week[calendar.THURSDAY]
    else:
        data1=third_week[calendar.THURSDAY]
    print ‘%3s :%2s‘%(calendar.month_abbr[m],data1)

#calendar官方标准库地址:https://docs.python.org/2.7/library/calendar.html?highlight=calendar#module-calendar

时间: 2024-10-21 22:09:09

python calendar标准库基础学习的相关文章

python linecache标准库基础学习

#python标准库基础之:linecacge:高效读取文本文件#说明与作用"""可以从文件或者导入python模块获取文件,维护一个结果缓存,从而可以更高效地从相同文件读取多行文本;此模块会在python标准库的其他部分中用到,缓存实现将在内存中保存文件内容(解析为单独的行).API通过索引一个列表返回所请求的行.与反复地读取文件并解析文本来查找所需文本行相比,这样可以节省时间,这个方法在查找同一个文件中多行尤其有用 ,比如一个异常."""im

python StringIO标准库基础学习

#标准库:StringIO提供类文件API文本缓冲区#作用:可以处理内存中的文本,有2种不同的实现:cStringIP版本用c编写提高速度,StringIO用python来提供可移植性,与其他字符串连接相比,cStringIO构造大字符串提供了更好的性能#示例try:    from cStringIO import StringIOexcept:    from  StringIO import StringIO#写入缓冲区out=StringIO()out.write('buffer.')p

python glob标准库基础学习

#glob文件名模式匹配#作用:使用unix shell规则查找与一个模式匹配文件名"""尽管glob api很小,但这个模块很强大,只要程序需要查找文件系统中名字与某种模式匹配一组文件,就可以使用此模块,要创建一个文件名列表,要求其中各个文件名都某个特定的扩展名,前缀或者中间都有某个共同字符串.就可以使用glob而不是编写定制代码来扫描目录内容.glob模式与正则re模式使用正则表达式并不相同,实际上.glob模式遵循标准unix路径扩展规则,只使用几个特殊字符来实现2个不

python filecmp标准库基础学习

# -*- coding: utf-8 -*-# 作者:新手__author__ = 'Administrator'#文件的比较import os,filecmp#作用用于比较系统中的目录和文件#例子2def mkfile(name,body=None):    with open(name,'w')as name1:        name1.write(body or name)    returndef mk_dir(top):    if not os.path.exists(top):

python os.path标准库基础学习1

#文件系统标准库学习import os,os.pathos.path#平台独立文件/文件名管理#以下给出一些常用的os模块下面使用的方法,如下:"""1:os.sep--路径各部分之间分隔符,如:/,\2:os.extsep 文件名与文件<扩展名>之间分隔符,如:.3:os.pardir 文件路径中表示目录树上一级的部分,如:..4:os.curdir 文件路径指示当前目录部分,如:.5:split()将函数分解成2部分:然后一个元组,这个元组的最后一个路径是第二

C 标准库基础 IO 操作总结

其实输入与输出对于不管什么系统的设计都是异常重要的,比如设计 C 接口函数,首先要设计好输入参数.输出参数和返回值,接下来才能开始设计具体的实现过程.C 语言标准库提供的接口功能很有限,不像 Python 库.不过想把它用好也不容易,本文总结 C 标准库基础 IO 的常见操作和一些特别需要注意的问题,如果你觉着自己还不是大神,那么请相信我,读完全文后你肯定会有不少收获. 一.操作句柄 打开文件其实就是在操作系统中分配一些资源用于保存该文件的状态信息及文件的标识,以后用户程序可以用这个标识做各种读

一、Python的标准库String

一.Python的标准库String 1.查看武器 a. help(type()) name = "jane"print(help(type(name))) b. capitalize() name = "jane" print(name.capitalize()) 效果:Jane c. center() name = "jane" print(name.center(50, '-')) 效果:-----------------------jan

Python 3标准库 第十四章 应用构建模块

Python 3标准库 The Python3 Standard Library by  Example -----------------------------------------第十四章     应用构建模块-----------------------------14.1  argparse:命令行选项和参数解析----------------------------- argparse模块 14.1.1  建立解析器 14.1.2  定义参数 argparse模块 14.1.3 

Python:标准库(包含下载地址及书本目录)

下载地址 中文版(扫描版)请使用迅雷下载 英文版(文字版) 官方文档 The Python Standard Library <Python标准库>一书的目录 <python标准库> 译者序 序 前言 第1章 文本1 1.1 string—文本常量和模板1 1.1.1 函数1 1.1.2 模板2 1.1.3 高级模板4 1.2 textwrap—格式化文本段落6 1.2.1 示例数据6 1.2.2 填充段落6 1.2.3 去除现有缩进7 1.2.4 结合dedent和fill7 1