#!/usr/bin/env python
-- coding:utf-8 --
万年历
1900年1月10
条件:1900年1月1日是星期1
要求输入一个1900年以后的年份和月份,打印当月的日历
输入年份是否是闰年
计算1900年1月1日到2020年12月31日间间隔了多少天。
计算输入月份和日期是当年的第几天
确定输入的月份1号是周几
总天数%7结果是几代表当月1日就是周几
year = int(input(“输入年份”))
moth = int (input(“输入月份”))
day = 0
run= 0
rnu =0
yearday = 0
for n in range(1900,year):
rnu+=1
if n%40 and n%100!=0 or n%4000:
run+=1
ping = rnu - run
yearday = run * 366 + ping * 365
nru =0
moths = [31,28,31,30,31,30,31,31,30,31,30,31]
if year % 4 == 0 and year % 100 != 0 or year % 400 == 0:
moths[1] = 29
index1 = range(moth-1)
for i in index1 :
day = moths[i] + day
else:
index1 = range(moth-1)
for i in index1:
day = moths[i] + day
zongtianshu = day + yearday
xingqi =((zongtianshu)%7)
print(“一\t二\t三\t四\t五\t六\t日”,)
x = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31]
x1 = “”
if (year%40 and year%100!=0) or year%4000:
x1 = [31,29,31,30,31,30,31,31,30,31,30,31]
for n in range(xingqi):
print(" \t", end=“”)
for m in range(x1[moth - 1]):
print(str(x[m]) + " \t", end="")
if (m + xingqi + 1) % 7 == 0:
print()
else:
x1=[31,28,31,30,31,30,31,31,30,31,30,31]
for n in range(xingqi):
print(" \t", end=“”)
for m in range(x1[moth - 1]):
print(str(x[m])+" \t", end=“”)
if (m + xingqi + 1) % 7 == 0:
print()