1) pythonでphpのstrtotimeのようなことがしたいのですが、方法を教えてください。

dateutil.parser.parseとかがベストプラクティスでしょうか。。。

2) pythonでdatetimeオブジェクトをunixtimeに変換する方法を教えてください

3) pythonで2つのdatetimeオブジェクトの差を秒で知りたいのですが、その方法を教えてください。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:2010/08/26 13:45:02
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答3件)

id:Surgo No.1

回答回数8ベストアンサー獲得回数1

ポイント40pt

>>> 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

id:kakatofu No.2

回答回数1ベストアンサー獲得回数0

ポイント40pt

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

id:ask001 No.3

回答回数49ベストアンサー獲得回数0

(はてなにより削除しました)

コメントはまだありません

この質問への反応(ブックマークコメント)

トラックバック

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません