2024年祝福語祝賀詞吉祥話

日付計算土日祝日除く

要計算一個特定日期是否為日本公眾假期(土日祝日)並排除節假日,你可以使用一個日期計算函式。在許多程式語言中,都可以實現這個功能。以下是一個簡單的Python函式示例:

import datetime

def is_holiday(date, exclude_days=None):
    """Check if a date is a national holiday (Saturday or Sunday) and exclude certain days.

    Parameters:
        date (datetime.date): A date to be checked.
        exclude_days (Optional[list]): A list of dates to be excluded from holidays. If None, excludes no days.

    Returns:
        bool: True if the date is a national holiday and not included in the exclude list, False otherwise.
    """
    holidays = [datetime.date(2023, 1, 1), # New Year's Day (Ganjitsu)
                datetime.date(2023, 2, 25), # Constitution Memorial Day (Sakura-no-hi)
                # ... add more holidays here ...
                ]
    if exclude_days:
        holidays = [d for d in holidays if d not in exclude_days]
    return date.weekday() not in [5, 6] and date.date() in holidays

這個函式首先定義了一些公共假期,然後檢查給定的日期是否是周六或周日(這是公眾假期通常的日期),並且是否在假期列表中(如果沒有提供排除列表,則默認排除所有日期)。

請注意,這個函式假設你的日期是Python的datetime.date對象。如果你的日期是其他格式,你可能需要調整這個函式以適應你的需求。此外,這個函式只考慮了公共假期,沒有考慮其他的日本傳統節日或紀念日。

在運行這個函式時,只需要傳入你想檢查的日期作為參數即可。例如:

print(is_holiday(datetime.date(2023, 3, 16)))  # True, March 16 is Golden Week in Japan (Monday of the first week)
print(is_holiday(datetime.date(2023, 3, 17)))  # False, March 17 is a regular weekday