yymmdd
の形式で6桁の日付を表す文字列を解析する必要があります。yy
の範囲は59から05(1959年から2005年)です。 time
モジュールのドキュメントによると、Pythonのデフォルトのピボット年は1969年で、私にとってはうまくいかないでしょう。文字列の日付を2桁の年で解析する方法は?
ピボット年をオーバーライドする簡単な方法はありますか、他の解決策を提案できますか?私はPython 2.7を使用しています。ありがとう!
yymmdd
の形式で6桁の日付を表す文字列を解析する必要があります。yy
の範囲は59から05(1959年から2005年)です。 time
モジュールのドキュメントによると、Pythonのデフォルトのピボット年は1969年で、私にとってはうまくいかないでしょう。文字列の日付を2桁の年で解析する方法は?
ピボット年をオーバーライドする簡単な方法はありますか、他の解決策を提案できますか?私はPython 2.7を使用しています。ありがとう!
私はdatetime
を使用し、それを正常に解析します。それはあなたの天井日を過ぎている場合、私は、オブジェクト上datetime.datetime.replace
を使用したい - バック100歳でそれを調整する:
import datetime
dd = datetime.datetime.strptime(date,'%y%m%d')
if dd.year > 2005:
dd = dd.replace(year=dd.year-100)
前に付加独自のピボットを使用して、現在までの世紀:その後、
year = int(date[0:2])
if 59 <= year <= 99:
date = '19' + date
else
date = '20' + date
、代わりに%y
の%Y
ディレクティブでstrptime
を使用しています。
import datetime
date = '20-Apr-53'
dt = datetime.datetime.strptime(date, '%d-%b-%y')
if dt.year > 2000:
dt = dt.replace(year=dt.year-100)
^2053 ^1953
print dt.strftime('%Y-%m-%d')
あなたはまた、次のことを実行できます。
today=datetime.datetime.today().strftime("%m/%d/%Y")
today=today[:-4]+today[-2:]