ISO 8601 年と週番号があり、これをその週の最初の日の日付 (月曜日) に変換する必要があります。これどうやってするの?
datetime.strptime()%W
はとディレクティブの両方を取りますが、どちらもdatetime.isocalendar()%U
が使用する ISO 8601 の平日の規則には準拠していません。
更新: Python 3.6%G
は、libc にも存在する,%V
およびディレクティブをサポートし、%u
このワンライナーを許可します:
>>> datetime.strptime('2011 22 1', '%G %V %u')
datetime.datetime(2011, 5, 30, 0, 0)
更新 2 : Python 3.8fromisocalendar()
では、さらに直感的なメソッドが追加されました。
>>> datetime.fromisocalendar(2011, 22, 1)
datetime.datetime(2011, 5, 30, 0, 0)