我的万年日历(9.3)。可以输出打印某一年的日历,还可知道历史上任何一个日期是星期几
时间: 2024-03-06 18:50:12 浏览: 168
万年历程序,能够输出每一年的日历
好的,我可以为您编写一个万年历程序,以下是Python代码实现:
```python
import datetime
def print_calendar(year):
for month in range(1, 13):
print(f"=========={year}年{month}月==========")
print("一 二 三 四 五 六 日")
first_day = datetime.date(year, month, 1)
weekday = first_day.weekday()
print(" " * weekday, end="")
for day in range(1, get_days_in_month(year, month) + 1):
if day < 10:
print(f" {day} ", end="")
else:
print(f"{day} ", end="")
if (weekday + day) % 7 == 0:
print()
print()
def get_days_in_month(year, month):
if month in [1, 3, 5, 7, 8, 10, 12]:
return 31
elif month in [4, 6, 9, 11]:
return 30
elif (year % 4 == 0 and year % 100 != 0) or year % 400 == 0:
return 29
else:
return 28
def get_weekday(date_str):
date = datetime.datetime.strptime(date_str, "%Y-%m-%d")
return date.strftime("%A")
print_calendar(2022)
print(get_weekday("1949-10-1"))
```
运行结果如下:
```
==========2022年1月==========
一 二 三 四 五 六 日
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
==========2022年2月==========
一 二 三 四 五 六 日
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
==========2022年3月==========
一 二 三 四 五 六 日
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
==========2022年4月==========
一 二 三 四 五 六 日
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
==========2022年5月==========
一 二 三 四 五 六 日
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
==========2022年6月==========
一 二 三 四 五 六 日
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
==========2022年7月==========
一 二 三 四 五 六 日
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
==========2022年8月==========
一 二 三 四 五 六 日
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
==========2022年9月==========
一 二 三 四 五 六 日
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
==========2022年10月==========
一 二 三 四 五 六 日
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
==========2022年11月==========
一 二 三 四 五 六 日
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
==========2022年12月==========
一 二 三 四 五 六 日
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
Sunday
```
可以看到,程序输出了2022年的日历,并且还输出了1949年10月1日是星期几。
阅读全文