2

日付がX日を超えているかどうかを確認する必要があります。Pythonでこれを行うにはどうすればよいですか?

私は次のようなものをテストしました:

if datetime.date(2010, 1, 12) > datetime.timedelta(3):

エラーが発生しました:

TypeError: can't compare datetime.date to datetime.timedelta

これを達成する方法についての手がかりはありますか?

4

2 に答える 2

7

datetimeをと比較することはできませんtimedelta。Atimedeltaは期間をdatetime表し、aは特定の時点を表します。2つのの違いです。日時は、sと同様に互いに比較可能です。datetimetimedeltatimedelta

2つのオプションがあります:

  • あなたが与えたものから別のものを引き、あなたが与えたものと結果をdatetime比較します。timedeltatimedelta
  • を別のに加算または減算してをtimedeltaに変換し、その結果を指定したものと比較します。datetimedatetimedatetimedatetime
于 2011-10-24T08:37:57.087 に答える
1

リンゴとオレンジを比較することは常に非常に難しいです!「2010年1月12日」(一定の時点)と「3時間」(期間)を比較しようとしています。これには意味がありません。

あなたが求めているのが「datetimeその月のn日後に私の転倒をする」であるなら、あなたはすることができます:

my_important_date = datetime.now()

if my_important_date.day > n:
    pass #do you important things
于 2011-10-24T08:52:21.197 に答える