2017-10-19 6 views
1

こんにちは、私はトラブル私はこの試みた=>はGMT時間を取得する2時間前にはPython 2.7

def get_timestamp(): 
    """Return correctly formatted timestamp""" 
    return strftime("%Y-%m-%dT%H:%M:%SZ", gmtime()) 
def two_hours_ago(): 
    """Return correctly formatted timestamp""" 
    last = (date.today() - timedelta(hours=1)) 
    return strftime("%Y-%m-%dT%H:%M:%SZ", gmtime()-'2HOURS') 

私get_timestampに同様の機能で2時間前の時間を取得して過ごしています:

def two_hours_ago(): 
    """Return correctly formatted timestamp""" 
    today = date.today() 
    yesterday = (today - timedelta(hours=2)) 
    print(yesterday.timetuple()) 
    return strftime("%Y-%m-%dT%H:%M:%SZ", yesterday.timetuple()) 

UPDATEを ありがとうございました Huang Yen Hao

Amazon MWSのISO形式で返された2時間の間隔を探していましたが、次の関数を使って正しくフォーマットされた時間。

def two_hours_ago(): 
    """Return correctly formatted timestamp""" 
    now = datetime.now() 
    two_hours_ago = (now - timedelta(hours=2)) 
    return two_hours_ago.strftime("%Y-%m-%dT%H:%M:%SZ") 
def now(): 
    """Return correctly formatted timestamp""" 
    now = datetime.now() 
    two_hours_ago = (now - timedelta(hours=0)) 
    return two_hours_ago.strftime("%Y-%m-%dT%H:%M:%SZ") 
+1

を次のように実行します。だから今日のタイムディータ(時= 2)は意味がありません。 –

+2

UTCの日付と時刻を扱う場合は、 'datetime.datetime.utcnow()'を使用できます。 –

+0

_私はこれを試しました。何をしましたか、それはあなたの期待にどうやって満たされませんでしたか? –

答えて

3

私は実際にtoday = date.today()というコードを理解していません。

これは、たとえば2017/10/18 00:00:00のことですか?

次のコードは、2時間前に取得できます。私はこのコードについては何それはあなたが何であるかない...

from datetime import datetime, timedelta 

def two_hours_ago(): 
    """Return correctly formatted timestamp""" 
    now = datetime.now() 
    two_hours_ago = (now - timedelta(hours=2)) 
    return two_hours_ago.strftime("%Y-%m-%dT%H:%M:%SZ") 

わからない、それは `date`オブジェクトは時間がない

>>> two_hours_ago() 
'2017-10-19T11:28:40Z' 
+0

ありがとうございます!私はもともとdatetimeで作業していましたが、私はそれをキャッチしませんでした。私は私の答えを更新しました。 –

関連する問題