欢迎访问宙启技术站
智能推送

Python实现一个简单的日历应用程序

发布时间:2023-12-04 09:20:48

下面是Python实现一个简单的日历应用程序的代码,同时包含一个使用例子:

import calendar

def print_calendar(year, month):
    cal = calendar.monthcalendar(year, month)
    month_name = calendar.month_name[month]

    print(f"
{month_name} {year}")
    print("Mo Tu We Th Fr Sa Su")
    for week in cal:
        line = " ".join('{0:2}'.format(day) if day != 0 else '  ' for day in week)
        print(line)

def main():
    print("Welcome to the calendar application!")
  
    while True:
        year = int(input("Enter a year (yyyy): "))
        month = int(input("Enter a month (1-12): "))

        if not (1 <= month <= 12):
            print("Invalid month. Please try again.")
            continue

        print_calendar(year, month)

        choice = input("Do you want to continue (y/n)? ")
        if choice.lower() != 'y':
            break

    print("Thank you for using the calendar application!")

if __name__ == "__main__":
    main()

上述代码使用了Python的calendar模块来获取给定年份和月份的日历,并将之打印出来。程序会一直循环提示用户输入年份和月份,直到用户选择不再继续。每次打印完日历后,用户可选择继续或退出。

以下是一个使用例子:

Welcome to the calendar application!
Enter a year (yyyy): 2022
Enter a month (1-12): 9

September 2022
Mo Tu We Th Fr Sa Su
          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

Do you want to continue (y/n)? y
Enter a year (yyyy): 2022
Enter a month (1-12): 10

October 2022
Mo Tu We Th Fr Sa Su
                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

Do you want to continue (y/n)? n
Thank you for using the calendar application!

这个简单的日历应用程序可以帮助用户查看任意年份和月份的日历。用户只需要输入年份和月份,程序将生成相应的日历,并打印在控制台上。用户可以选择继续查看其他年份和月份的日历,或者选择退出程序。