1

PythonとGoogleAppEngineのUTCから現地時間への変換によると、現在の時刻と目標時刻(異なるタイムゾーンを考慮)を正しく比較するには、次のように目標時刻をUTCに変換する必要があります。

import pytz

def toUTC(date, tz):
    tz = pytz.timezone('Asia/Taipei')
    utc = pytz.timezone('UTC')
    d_tz = tz.normalize(tz.localize(date))
    d_utc = d_tz.astimezone(utc)
    return d_utc

days = 10
minutes = 20
targetTime = datetime.datetime(2012,12,22,0,0,0)
targetTime = targetTime + datetime.timedelta(days=days, minutes=minutes)
targetTime = toUTC(targetTime) 

if targetTime < datetime.datetime.now():
    ...

質問:

  1. これは正しいです?
  2. エラーメッセージがあります:

    TypeError: can't compare offset-naive and offset-aware datetimes

    それを解決する方法は?

4

1 に答える 1

1

これは、datetimeオブジェクトの1つにタイムゾーンが設定されていて、もう1つにはタイムゾーンが設定されていないためです。ここここ
を見てください

于 2012-12-23T09:14:41.260 に答える