16

datetimeのようなファイルに保存します。

time1 = datetime.datetime.now()
f.write(str(time1))

今読んでみるtimeと、文字列であることがわかります。変換するためにさまざまな方法を試しましたが、今のところうまくいきません。

time = line[x:x+26]

datetimeバックの文字列表現をdatetimeオブジェクトに変換するにはどうすればよいですか?

4

4 に答える 4

16

まず、ファイル内の日付の形式を把握し、strptimeメソッドを使用する必要があります。

# substitute your format
# the one below is likely to be what's saved by str(datetime)
previousTime = datetime.datetime.strptime(line[x:x+26], "%Y-%m-%d %H:%M:%S.%f") 

(むしろ使ったほうがdt.strftime(...)いいstr(dt))

次に、datetime オブジェクトを減算してtimedeltaを取得します

delta = datetime.datetime.now() - previousTime
于 2012-11-13T07:00:14.890 に答える
11

を使ってみてくださいdateutildatetime文字列をオブジェクトに変換しようとする解析があります。

>>> from dateutil import parser
>>> strtime = str(datetime.now())
>>> strtime
'2012-11-13 17:02:22.395000'
>>> parser.parse(strtime)
datetime.datetime(2012, 11, 13, 17, 2, 22, 395000)

datetime次に、1 つを別のものから減算timedeltaし、時間の差を詳述するオブジェクトを取得できます。

于 2012-11-13T07:01:16.363 に答える
5

Python 3.7以降では少し簡単です

ストリングするには:

import datetime

my_date_string = datetime.datetime.utcnow().isoformat()

文字列から:

my_date = datetime.datetime.fromisoformat(my_date_string)
于 2021-02-13T19:41:45.537 に答える
0

使用するだけです:

var x = DateTime.parse(time1);

x必要な DateTime オブジェクトはどこにありますか

于 2020-08-17T07:49:42.273 に答える