dateutil.parser.parseとかがベストプラクティスでしょうか。。。
2) pythonでdatetimeオブジェクトをunixtimeに変換する方法を教えてください
3) pythonで2つのdatetimeオブジェクトの差を秒で知りたいのですが、その方法を教えてください。
>>> import time
>>> import datetime
#1
>>> t = datetime.datetime.strptime("20100819", "%Y%m%d")
>>> print t
フォーマット: http://docs.python.org/library/datetime.html#strftime-strptime-b...
# 2
>>> t = datetime.datetime.now()
>>> print time.mktime(t.timetuple())
# 3
>>> t1 = datetime.datetime.now()
>>> t2 = datetime.datetime.now()
>>> delta = t2 - t1
>>> print delta.seconds
http://www.python.jp/doc/2.5/lib/datetime-datetime.html
http://www.python.jp/doc/2.5/lib/datetime-timedelta.html
http://www.python.jp/doc/2.5/lib/module-time.html
> 1) pythonでphpのstrtotimeのようなことがしたいのですが、方法を教えてください。
datetimeのstrptimeというメソッドを使うのはどうでしょうか。
>>> import datetime
>>> dt = datetime.datetime.strptime("2010/08/19", "%Y/%m/%d")
>>> dt
datetime.datetime(2010, 8, 19, 0, 0)
>>> str(dt)
'2010-08-19 00:00:00'
> 2) pythonでdatetimeオブジェクトをunixtimeに変換する方法を教えてください
datetimeのstrftime("%s")を用いて文字列に変換し、それを整数に変換するというのはどうでしょうか。
>>> import datetime
>>> dt = datetime.datetime.now()
>>> print dt
2010-08-19 14:50:01.546977
>>> print dt.strftime("%s")
1282197001
>>> ut = int(dt.strftime("%s"))
>>> print ut
1282197001
> 3) pythonで2つのdatetimeオブジェクトの差を秒で知りたいのですが、その方法を教えてください。
datetimeオブジェクト同士で差をとり、daysを秒に変換しsecondsと足すというのはどうでしょうか。
>>> a = datetime.datetime(2010,8,19,15)
>>> b = datetime.datetime(2010,8,20,16)
>>> print b - a
1 day, 1:00:00
>>> s = b - a
>>> s.seconds
3600
>>> s.days*60*60*24
86400
>>> s.days*60*60*24 + s.seconds
90000
コメント(0件)