使用Python实现一个简单的日历应用程序
发布时间:2023-12-04 11:23:21
日历应用程序可以帮助用户查看特定日期的详细信息,如星期几、该月的日子和提醒事项等。在Python中,我们可以使用datetime模块来实现日历应用程序。
首先,我们可以创建一个函数来打印特定年份和月份的日历。
import datetime
def print_calendar(year, month):
# 打印日历标题
print("{:^20}".format(datetime.date(year, month, 1).strftime("%B %Y")))
print("-" * 20)
print("Mon Tue Wed Thu Fri Sat Sun")
# 找到该月的第一天是星期几
first_day = datetime.date(year, month, 1).weekday()
# 找到该月的总天数
total_days = datetime.date(year, month + 1, 1) - datetime.date(year, month, 1)
# 填充空白天数
for i in range(first_day):
print("{:>3}".format(" "), end=" ")
# 打印日期
for day in range(1, total_days.days + 1):
print("{:>3}".format(day), end=" ")
# 换行
if (day + first_day) % 7 == 0:
print()
print("
")
接下来,我们可以编写主函数来调用print_calendar函数。
def main():
# 获取当前日期
today = datetime.date.today()
while True:
# 提示用户输入年份和月份
year = int(input("请输入年份(输入0退出):"))
if year == 0:
break
month = int(input("请输入月份:"))
# 调用函数打印日历
print_calendar(year, month)
最后,我们可以在主函数中调用main函数。
if __name__ == "__main__":
main()
使用示例:
请输入年份(输入0退出):2022
请输入月份:11
November 2022
--------------------
Mon Tue Wed Thu Fri Sat Sun
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
请输入年份(输入0退出):2022
请输入月份:12
December 2022
--------------------
Mon Tue Wed Thu Fri Sat Sun
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
请输入年份(输入0退出):0
这样,我们就实现了一个简单的日历应用程序。用户可以输入年份和月份,程序将打印出该月份的日历。
