5

日付が与えられた場合、その月の平日の位置(例:その月の第3火曜日)をどのように知ることができますか?また、次の月の同じ平日の日付をどのように取得しますか(例:その月の第3火曜日+ 1)?

4

4 に答える 4

3

datetimeモジュールを見てください。具体的には、日付 オブジェクトの曜日メソッド。isocalendarも役立つかもしれません。

于 2011-08-11T12:44:24.983 に答える
2

以下の例でdは、 はdatetime.dateオブジェクトです。

現在の月内の日の「インデックス」を取得するには、次を使用します

def weekday_index(d):
    return (d.day + 6) // 7

この式は、実際の日付が何曜日であるかに関係なく機能します。翌月の同じ平日インデックスで同じ平日の日を取得するには、最も簡単な方法は

d_next = d + datetime.timedelta(weeks=4)
if weekday_index(d_next) < weekday_index(d):
    d_next += datetime.timedelta(weeks=1)

これは、探している日付が の 4 週間後または 5 週間後のいずれかであるという事実を利用していますd

于 2011-08-11T12:59:51.640 に答える
2

dateutilを見てください

于 2011-08-11T13:03:05.560 に答える