python万年历代码
时间: 2023-10-12 09:21:09 浏览: 43
以下是一个简单的Python万年历代码:
```python
# 定义一个函数用于判断是否是闰年
def is_leap(year):
return year % 4 == 0 and (year % 100 != 0 or year % 400 == 0)
# 定义一个函数用于计算某个月份的天数
def get_days_in_month(year, month):
if month in (1, 3, 5, 7, 8, 10, 12):
return 31
elif month == 2:
return 29 if is_leap(year) else 28
else:
return 30
# 定义一个函数用于生成某个月份的日历
def generate_calendar(year, month):
# 获取当月第一天是星期几
first_day_of_month = datetime.datetime(year, month, 1).weekday()
# 计算当月的天数
days_in_month = get_days_in_month(year, month)
# 输出日历表头
print('{:^20}'.format(datetime.date(year, month, 1).strftime('%B %Y')))
print('Su Mo Tu We Th Fr Sa')
# 输出日历内容
for i in range(0, first_day_of_month):
print(' ', end='')
for i in range(1, days_in_month + 1):
print('{:2d} '.format(i), end='')
if (i + first_day_of_month) % 7 == 0:
print()
if (days_in_month + first_day_of_month) % 7 != 0:
print()
# 输入年份和月份
year = int(input('请输入年份:'))
month = int(input('请输入月份:'))
# 生成日历
generate_calendar(year, month)
```
该代码利用了Python的datetime模块,通过计算每个月份的第一天是星期几,以及每个月份的天数,生成了相应的日历。