python万年历实现代码 含运行结果

yipeiwu_com6年前Python基础

本文实例为大家分享了python实现万年历的具体代码,供大家参考,具体内容如下

#coding:utf-8
def leap_year(year):#判断平瑞年
  if year%4==0 and year%100!=0 or year%400==0:
    return True
  else:
    return False
def getMonthDays(year,month):#得到每个年份每月的天数
  days = 31
  if month == 2 :
    if leap_year(year):
      days=29
    else:
      days=28
  elif month==4 or month==6 or month==9 or month==11:
    days=30
  return days

def getTotalDays(year,month):#计算星期
  totalDays=0
  for i in range(1,year):
    if leap_year(i):
      totalDays += 366
    else:
      totalDays += 365
  for i in range(1,month):
    totalDays +=getMonthDays(year,i)
  return totalDays
year=input("输入年份:")
month = input("请输入月:")
iCount = 0
print "日\t一\t二\t三\t四\t五\t六"
i=1
for i in range((getTotalDays(year,month)%7)+1):
    print '\t',
    iCount+=1
for i in range(1,getMonthDays(year,month)+1):
    print i,'\t',
    iCount +=1
    if iCount%7 == 0 :
      print ''

运行效果:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Linux CentOS7下安装python3 的方法

在CentOS7下,默认安装的就是python2.7,我现在来教大家如何安装python3: 1、首先安装python3.6可能使用的依赖 # yum -y install open...

django如何通过类视图使用装饰器

需求:当我们想禁止ip黑名单访问我们的某些页面时,例如注册页面。应该怎么操作呢? 解决方案:这时候我们可以设计一个装饰器,过滤ip黑名单。 装饰器的写法如下: from functo...

numpy自动生成数组详解

1 np.arange(),类似于range,通过指定开始值,终值和步长来创建表示等差数列的一维数组,注意该函数和range一样结果不包含终值。 >>> np.ar...

pymssql数据库操作MSSQL2005实例分析

本文实例讲述了pymssql数据库操作MSSQL2005的方法。分享给大家供大家参考。具体如下: 使用的MSSQL2005,通过pymssql来连接的。把可能用到的数据库操作方式都总结如...

在python 中实现运行多条shell命令

使用py时可能需要连续运行多条shell 命令 1. # coding: UTF-8 import sys reload(sys) sys.setdefaultencoding('u...