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
python calendar标准库基础学习的更多相关文章
- python linecache标准库基础学习
#python标准库基础之:linecacge:高效读取文本文件#说明与作用"""可以从文件或者导入python模块获取文件,维护一个结果缓存,从而可以更高效地从相同文件 ...
- python StringIO标准库基础学习
#标准库:StringIO提供类文件API文本缓冲区#作用:可以处理内存中的文本,有2种不同的实现:cStringIP版本用c编写提高速度,StringIO用python来提供可移植性,与其他字符串连 ...
- python glob标准库基础学习
#glob文件名模式匹配#作用:使用unix shell规则查找与一个模式匹配文件名"""尽管glob api很小,但这个模块很强大,只要程序需要查找文件系统中名字与某种 ...
- python filecmp标准库基础学习
# -*- coding: utf-8 -*-# 作者:新手__author__ = 'Administrator'#文件的比较import os,filecmp#作用用于比较系统中的目录和文件#例子 ...
- python 标准库基础学习之开发工具部分1学习
#2个标准库模块放一起学习,这样减少占用地方和空间#标准库之compileall字节编译源文件import compileall,re,sys#作用是查找到python文件,并把它们编译成字节码表示, ...
- 【python】标准库的大致认识
正如那句 Python 社区中很有名的话所说的:“battery included”,Python 的一大好处在于它有一套很有用的标准库(standard library).标准库是随着 Python ...
- C 标准库基础 IO 操作总结
其实输入与输出对于不管什么系统的设计都是异常重要的,比如设计 C 接口函数,首先要设计好输入参数.输出参数和返回值,接下来才能开始设计具体的实现过程.C 语言标准库提供的接口功能很有限,不像 Pyth ...
- Python的标准库介绍与常用的第三方库
Python的标准库介绍与常用的第三方库 Python的标准库: datetime:为日期和时间的处理提供了简单和复杂的方法. zlib:以下模块直接支持通用的数据打包和压缩格式:zlib,gzip, ...
- python 使用标准库连接linux实现scp和执行命令
import stat import pexpect 只显示关键代码: sqldb = localpath+database //获取database名字 if os.path.exists(sqld ...
随机推荐
- bui上手体验
在最近的项目中,接触到了bui这个后台管理框架 主页地址:http://builive.com/ 主页上也有一个后台管理的Demo:http://builive.com/apps/default/ma ...
- XMPP通讯开发-好友获取界面设计
在XMPP通讯开发-服务器连接 中我们成功连接到服务器上面,然后进入到主界面,接下来就是获取好友列表,这里我们分段开发,首先就是界面的设计,这里仿照QQ好友界面,里面的数据先是用模拟的,下一章获取服务 ...
- Java和C++的不同
现在一边继续深入C++,一边学习Java,为了学习得更加透彻,不断比较两者之间的不同,以后会慢慢继续增加. 1.在多态的实现上,C++需要利用关键字virtual,而Java不需要,因为在Java中, ...
- css圆角
在CSS3中圆角属性,有四个.三个.两个和一个值. 四个值: 第一个值为左上角,第二个值为右上角,第三个值为右下角,第四个值为左下角.
- A.indexOf(array[i])表达的含义
userAgentInfo.indexOf(Agents[v]): //A.indexOf(array[i]):A元素是否存在于数组array里面:如果存在就会返回对应的下标,如果不存在则返回-1. ...
- Ajax客户登陆验证
服务器端操作方便之处我就不吹了,地球人都知道,它最烦莫过于页面刷新,头都被刷晕了,而且他在刷新的时候,还触发服务器端的事件,现在Ajax的出现,他们的结合是发展的必然! 一.介绍一下Aj ...
- 创建自托管的SignalR服务端
微软官方例子地址:http://www.asp.net/signalr/overview/deployment/tutorial-signalr-self-host 1.说明: SignalR服务端可 ...
- java下socket传图片
package cn.stat.p4.ipdemo; import java.io.File; import java.io.FileOutputStream; import java.io.IOEx ...
- defer和async
1.decument.wirte不能使用 2.<script src="text.js" type="text/javascript" defer=&qu ...
- Html5 学习之 Html5功能判断插件 Modernizr
---恢复内容开始--- Modernizr 浏览器对HTML5和CSS3开发的功能检测类库 由于当前用户使用的浏览器版本较多,对H5和CSS3的支持也各不相同.前端的开发者,在使用一些新的特性的时候 ...