Python实现的简单万年历例子分享
#-*-coding:utf-8-*-
__author__="jalright"
"""
使用python实现万年历
"""
defis_leap_year(year):
"""
判断是否是闰年,返回boolean值
"""
ifyear/4==0and year/400!=0:
returnTrue
elifyear/100==0andyear/400==0:
returnTrue
else:
returnFalse
defgetMonthDays(year,month):
"""
获取指定年月的月份有多少天
"""
days=31 #31天居多,设置为默认值
ifmonth==2: #2月份要判断是否是闰年
ifis_leap_year(year):
days=29
else:
days=28;
elifmonthin[4,6,9,11]: #判断小月,只有30天
days=30
returndays
defgetTotalDays(year,month):
"""
获取1990-01-01离现在有多少天,1990-01-01是星期一,以这个为标准来判断星期
"""
totalDays=0
foriinrange(1990,year): #使用range来循环,算出多少年多少天
ifis_leap_year(i): #判断是否是闰年
totalDays+=366
else:
totalDays+=365
foriinrange(1,month): #使用range循环,算出今年前面几个月过了多少天
totalDays+=getMonthDays(year,i)
returntotalDays
if__name__=="__main__":
whileTrue: #循环判断是否输入错误的格式
print"××××××××××python实现万年历××××××××"
year=raw_input("请输入年份(如:1990):")
month=raw_input("请输入月份:如:1")
try: #捕捉输入异常格式和月份的正确
year=int(year)
month=int(month)
ifmonth<1ormonth>1: #判断月份是否输入错误,错误就重新开始循环
print"年份或者月份输入错误,请重新输入!"
continue
except: #捕捉到转换成整型异常,输出提示,重新开始循环
print"年份或者月份输入错误,请重新输入!"
continue
break #如果没有异常就跳出循环
#ifis_leap_year(year):
# print"%s是润年"%year
#else:
# print"%s是平年"%year
#print"%s月份总共有%s天!"%(month,getMonthDays(year,month))
print"日\t一\t二\t三\t四\t五\t六"
iCount=0 #计数器来判断是否换行
foriinrange(getTotalDays(year,month)%7):
print"\t", #输出空不换行
iCount+=1
foriinrange(1,getMonthDays(year,month)):
printi,
print"\t",
iCount+=1
ifiCount%7==0: #计数器取余为0,换行
print""
相关文章
- 20·Python基础-单例模式四种实现方式
- pycharm导入Python_python简单项目
- 卡尔曼滤波算法及其python实现
- python海龟作图红绿灯_海龟作图—用Python绘图
- python教程:用简单的Python编写Web应用程序
- 简单的Python脚本,实现批量设置重复性配置
- 一场亲子趣味运动引起的算法优化及Python实现
- 使用Python批量实现某一Excel文件中每3行数据存一个Excel文件
- 【使用Python实现算法】03 标准库(数字与数学模块)
- Python实现搭建-简单服务器教程
- 用几行Python代码实现一个简单的Web服务器详解编程语言
- Python递归实现汉诺塔详解编程语言
- python实现lower_bound和upper_bound详解编程语言
- Python结合MySQL实现信息交互(python与mysql交互)
- Python实现快速连接Redis数据库(python连接redis)
- 如何判断你的 Python 代码实现是否合适?
- 从 Python 连接到 MySQL:实现更多强大的数据库应用(python和mysql)
- 使用Python快速轻松构建Redis客户端(简单实现redis客户端)
- python用Redis与Python实现大数据收集与分析(redis 联合)
- ssh批量登录并执行命令的python实现代码
- python实现socket客户端和服务端简单示例
- kNN算法python实现和简单数字识别的方法
- Python实现爬取知乎神回复简单爬虫代码分享
- python实现进程间通信简单实例
- Python中多线程thread与threading的实现方法
- Python实现的一个简单LRUcache