#!/usr/bin/env python2

#-*- coding:utf-8 -*-

__author__ = 'jalright'

"""

使用python实现万年历

"""

def is_leap_year(year):

"""

判断是否是闰年,返回boolean值

"""

if year/4==0 and  year/400 !=0:

return True

elif year/100 == 0 and year/400 ==0 :

return True

else:

return False

def getMonthDays(year,month):

"""

获取指定年月的月份有多少天

"""

days = 31        #31天居多,设置为默认值

if month == 2 :    #2月份要判断是否是闰年

if is_leap_year(year):

days=29

else:

days=28;

elif month in [4,6,9,11]:     #判断小月,只有30天

days=30

return days

def getTotalDays(year,month):

"""

获取1990-01-01离现在有多少天,1990-01-01是星期一,以这个为标准来判断星期

"""

totalDays=0

for i in range(1990,year):     #使用range来循环,算出多少年多少天

if is_leap_year(i):        #判断是否是闰年

totalDays += 366

else:

totalDays += 365

for i in range(1,month):       #使用range循环,算出今年前面几个月过了多少天

totalDays +=getMonthDays(year,i)

return totalDays

if __name__ == '__main__':

while True:                                 #循环判断是否输入错误的格式

print "××××××××××python实现万年历××××××××"

year = raw_input("请输入年份(如:1990):")

month = raw_input("请输入月份:如:1")

try:                                    #捕捉输入异常格式和月份的正确

year = int(year)

month = int(month)

if month <1 or month >1:            #判断月份是否输入错误,错误就重新开始循环

print "年份或者月份输入错误,请重新输入!"

continue

except:                                 #捕捉到转换成整型异常,输出提示,重新开始循环

print "年份或者月份输入错误,请重新输入!"

continue

break     #如果没有异常就跳出循环

#if is_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      #计数器来判断是否换行

for i in range(getTotalDays(year,month)%7):

print '\t',                 #输出空不换行

iCount+=1

for i in range(1,getMonthDays(year,month)):

print i,

print '\t',

iCount +=1

if iCount%7 == 0 :           #计数器取余为0,换行

print ''

python万年历实验报告_Python实现的简单万年历例子分享相关推荐

  1. python综合实验报告_Python程序设计实验报告五:综合运用三种基本结构进行程序设计(综合性实验)...

    安徽工程大学 Python程序设计 实验报告 班级 物流191 姓名姚彩琴学号3190505129 成绩 日期 2020.4.22 指导老师修宇 [实验名称]综合运用三种基本结构进行程序设计(综合性实 ...

  2. python综合实验报告_Python程序设计 实验报告

    安徽工程大学 Python程序设计 实验报告 班级:物流192       姓名:刘马汉卿学号:319005211 成绩:            日期:2020年4月29日        指导老师:修 ...

  3. python数据分析实验报告_Python数据分析综合小练习:销售数据分析

    有这样一个小小的练习题: 卖电子商品的老板,每天记录了自己卖出的U盘,电脑支架,插座,电池,音箱,鼠标,usb数据线,手机充电线等数量,客户的需求是一方面,也可以通过客户购买关联性比较强的商品进行引导 ...

  4. python面向对象实验报告_Python 面向对象 | 菜鸟教程

    Python 面向对象 Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对象是很容易的.本章节我们将详细介绍Python的面向对象编程. 如果你以前没有接触过 ...

  5. python万年历实验报告_Python编程——万年历

    2017年五月份日历 万年历这个题目几乎是不论学哪种编程语言必要尝试的一个小知识,综合了循环,逻辑关系判断等各编程语言的基础知识.今天我们一起用Python实现简单的万年历功能(查看某年各个月份日历和 ...

  6. python手写数字识别实验报告_Python代码实现简单的MNIST手写数字识别(适合初学者看)...

    补充:由于很多同学找我要原数据集和代码,所以我上传到了资源里,https://download..net/download/zugexiaodui/10913834 初学机器学习,第一步是做一个简单的 ...

  7. python简单计算器综合实验报告_Python实现的简单计算器功能详解

    本文实例讲述了Python实现的简单计算器功能.分享给大家供大家参考,具体如下: 使用python编写一款简易的计算器 计算器效果图 首先搭建计算器的面板: 计算器面板结构 建造一个继承于wx.Fra ...

  8. python爬虫实验报告_python爬虫实验

    原博文 2013-06-28 13:30 − 那天在新浪微博上看到北北出的题目,由于最近也在做类似的爬虫研究,所以就有了这个实验. 后来在QQ上和北北说了下,要求是啥都抓,就抓乌云的... 然后就开始 ...

  9. python实现日历功能_Python实现的简单万年历例子分享

    代码如下: #!/usr/bin/env python2 #-*- coding:utf-8 -*- __author__ = 'jalright' """ 使用pyth ...

最新文章

  1. linux shell 读取文件 笔记
  2. python获利模式_Python 分段利润提成
  3. 【Spark】为什么没有任务调度到新增的Worker之上???
  4. (转载)VS2010/MFC编程入门之三十六(工具栏:工具栏资源及CToolBar类)
  5. Easyui+Spring+Mybatis完整示例(后台)
  6. 华为堡垒机_浪潮无线分析,华为云堡垒机
  7. 七牛2015结姻大典,约吗?
  8. Java枚举类的简单使用
  9. 190817每日一句
  10. 《旷野游荡的精灵》 一个会写诗的程序员 2019.3
  11. 云服务器宝塔是什么,云服务器如何安装宝塔面板
  12. 暗影精灵4电脑win10系统重装+linux双系统安装
  13. 该文件没有与之关联的程序来执行操作。解决方案
  14. 修改游戏存档之植物大战僵尸
  15. c语言编写开关程序,C语言开关语句:switch
  16. 支持向量机识别数字集(数据采集+模型训练+预测输出)
  17. STM32的中断优先级说明(抢占式与响应式优先级)
  18. python123回文素数_平方回文素数
  19. 放大图片并保持清晰度的方法!
  20. 程控交换机程序故障处理

热门文章

  1. 计算机的用户名在哪,告诉你win7系统用户名在哪以及用户名更改
  2. linux的服务文件,Linux的nfs文件服务
  3. 德力西双电源自动转换开关说明书_今日优品:南开区FLQ3-25双电源自动转换开关全国服务-老友网...
  4. java 配置文件加载_java加载配置文件信息
  5. linux中ftp保持连接,linux – FTP’ing大文件时如何防止TCP连接超时?
  6. mysql utf8转gbk cmd_utf8转成gbk
  7. 跑步呼吸方法(细胞分裂呼吸法)
  8. eemd优缺点_基于EEMD的信号处理方法分析和实现
  9. fov视场角计算_图像传感器集成计算功能,赋能机器视觉技术
  10. Spring Security 用户登录实战