Pythonでこの形式のMMDDYY
で「昨日」の日付を見つける必要があります。
したがって、たとえば、今日の日付は次のように表されます:111009
今日はこれを簡単に行うことができますが、「昨日」の間は自動的に実行できません。
datetime.timedelta()
を使用します
>>> from datetime import date, timedelta
>>> yesterday = date.today() - timedelta(days=1)
>>> yesterday.strftime('%m%d%y')
'110909'
from datetime import datetime, timedelta
yesterday = datetime.now() - timedelta(days=1)
yesterday.strftime('%m%d%y')
これはあなたが望むことをするはずです:
import datetime
yesterday = datetime.datetime.now() - datetime.timedelta(days = 1)
print yesterday.strftime("%m%d%y")
import datetime
now = datetime.datetime.now()
now -= datetime.timedelta(days=1)
print now.strftime("%m%d%y")
これでうまくいくはずです。 pythonメーリングリスト から盗まれた。
from datetime import datetime, timedelta
today = datetime.today()
yesterday = today - timedelta(1)
すべての答えは正しいですが、その時間差負の引数を受け入れるに言及したいと思います。
>>> from datetime import date, timedelta
>>> yesterday = date.today() + timedelta(days=-1)
>>> print(yesterday.strftime('%m%d%y')) #for python2 remove parentheses
Chris で与えられる答えを展開するには
特定の形式で変数に日付を保存したい場合、これは私が知る限り最短で最も効果的な方法です
>>> from datetime import date, timedelta
>>> yesterday = (date.today() - timedelta(days=1)).strftime('%m%d%y')
>>> yesterday
'020817'
整数として必要な場合(便利な場合があります)
>>> yesterday = int((date.today() - timedelta(days=1)).strftime('%m%d%y'))
>>> yesterday
20817
すべての文字列形式コードは次の場所にあります。 http://au2.php.net/strftime
In [1]: import datetime
In [2]: today=datetime.date.today()
In [3]: yesterday=today-datetime.timedelta(1)
In [4]: yesterday.strftime('%m%d%y')
Out[4]: '110909'
これをやや国際化し、米国で一般的な奇妙な月日年ではなく、国際標準に従って日付をフォーマットするだけですか?
from datetime import datetime, timedelta
yesterday = datetime.now() - timedelta(days=1)
yesterday.strftime('%Y-%m-%d')