İfadenizde şu ya da bu şekilde bir sorununuz var datetime.datetime.fromtimestamp(time.mktime(time.gmtime())).
(1) İhtiyacınız olan tek şey, saniyeler içinde iki örnek arasındaki fark ise, çok basit time.time()olan işi yapar.
(2) Bu zaman damgalarını başka amaçlarla kullanıyorsanız, ne yaptığınızı düşünmeniz gerekir, çünkü sonucun her yerinde büyük bir koku vardır:
gmtime()UTC'de bir zaman aralığı döndürür, ancak yerel saattemktime() bir zaman aralığı bekler .
Standart TZ'nin UTC + 10 olduğu Melbourne, Avustralya'dayım, ancak gün ışığından yararlanma yarın sabaha kadar hala yürürlükte, bu yüzden UTC + 11. Aşağıdakileri yürüttüğümde, 2011-04-02T20: 31 burada yerel saatti ... UTC 2011-04-02T09: 31
>>> import time, datetime
>>> t1 = time.gmtime()
>>> t2 = time.mktime(t1)
>>> t3 = datetime.datetime.fromtimestamp(t2)
>>> print t0
1301735358.78
>>> print t1
time.struct_time(tm_year=2011, tm_mon=4, tm_mday=2, tm_hour=9, tm_min=31, tm_sec=3, tm_wday=5, tm_yday=92, tm_isdst=0) ### this is UTC
>>> print t2
1301700663.0
>>> print t3
2011-04-02 10:31:03 ### this is UTC+1
>>> tt = time.time(); print tt
1301736663.88
>>> print datetime.datetime.now()
2011-04-02 20:31:03.882000 ### UTC+11, my local time
>>> print datetime.datetime(1970,1,1) + datetime.timedelta(seconds=tt)
2011-04-02 09:31:03.880000 ### UTC
>>> print time.localtime()
time.struct_time(tm_year=2011, tm_mon=4, tm_mday=2, tm_hour=20, tm_min=31, tm_sec=3, tm_wday=5, tm_yday=92, tm_isdst=1) ### UTC+11, my local time
İfadenizin sonucunun t3'ün UTC + 1 olduğunu fark edeceksiniz ki bu UTC + (yerel DST farkım) ... çok anlamlı değil. datetime.datetime.utcnow()DST açıldığında / kapandığında bir saat atlamayacak ve size daha fazla hassasiyet verebilecek olanları kullanmayı düşünmelisiniz.time.time()