输入一个四位的年份,打印全年的日历,用Python完成,需要定义一些函数。
定义一个判断是否为闰年的函数:闰年需要满足能够被400整除,或能被4整除,不能被100整除;如果是闰年返回1,如果不是返回0。
该函数根据月份,得到该月的天数(行8)。默认为都是30天(行2),如果是一、三、五、七、八、十、腊月(行3、4),该月为31天(行5),2月的话(行6),根据是否为闰年,是为29天(闰年),不是则为28天(平年),这里用到了if…else三元表达式(行7)。
定义一个统计天数的函数,计算出某年某月某日,是该年的第几天;只用了if,而没有用elif,因为天数是需要不断累加的。
根据历法公式,得出某年某月的一号是星期几;w的值为0到7,对应星期日到星期六。
w为打印当月一号前面的空格数量;md为循环当月的天数,每七天换一行。
主程序获取输入的年份,循环12遍,把每个月份的日历打印出来。
一个简易的万年历就做好了。