Unix laika zīmoga virknes konvertēšana uz lasāmu datumu

Man ir virkne, kas atveido unix laika zīmogu (t.i., "1284101485") Python, un es gribētu to pārvērst uz lasāmu datumu. Kad es izmantoju time.strftime, man parādās TypeError:

>>>import time
>>>print time.strftime("%B %d %Y", "1284101485")

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: argument must be 9-item sequence, not str

Izmantot datetime moduli:

from datetime import datetime
ts = int("1284101485")

# if you encounter a "year is out of range" error the timestamp
# may be in milliseconds, try `ts /= 1000` in that case
print(datetime.utcfromtimestamp(ts).strftime('%Y-%m-%d %H:%M:%S'))
Komentāri (11)
>>> from datetime import datetime
>>> datetime.fromtimestamp(1172969203.1)
datetime.datetime(2007, 3, 4, 0, 46, 43, 100000)

Pārņemts no http://seehuhn.de/pages/pdate

Komentāri (0)
>>> import time
>>> time.ctime(int("1284101485"))
'Fri Sep 10 16:51:25 2010'
>>> time.strftime("%D %H:%M", time.localtime(int("1284101485")))
'09/10/10 16:51'
Komentāri (1)