1. ホーム
  2. python

[解決済み] ある日付が何年のどの四半期にあたるかを判断する関数はありますか?

2022-06-26 14:11:07

質問

もちろん自分で書くこともできますが、車輪の再発明をする前に、すでにこれを行う関数があるのでしょうか?

どのように解決するのですか?

インスタンスが与えられると x datetime.date , (x.month-1)//3 は四半期を表します(第1四半期は0、第2四半期は1、など -- 1から数える必要がある場合は1を加えてください;)。


元々 2 つの回答は、何度も upvoted され、元々受け入れられていましたが (現在は両方とも削除されています)、バグがありました。 -1 を行わず、3 ではなく 4 で割っています。 .month は1から12まであるので、どの式が正しいか自分で確認するのは簡単です。

for m in range(1, 13):
  print m//4 + 1,
print

与える 1 1 1 2 2 2 2 3 3 3 3 4 -- 4ヶ月の四半期が2つ、単月の四半期が1つです。

for m in range(1, 13):
  print (m-1)//3 + 1,
print

与える 1 1 1 2 2 2 3 3 3 4 4 4 -- この方が圧倒的に有利に見えますよね?)

これは、その質問が十分に正当であることの証明だと思います;-)。

私はdatetimeモジュールが必ずしもすべての可能な有用な暦関数を持つべきだとは思いませんが、私が(よくテストされた;-) datetools モジュールは、これらの暦計算をすべて実行するための多くの小さな関数を持っています。