Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Converting DateTimeField in Django to Unix time [duplicate]

Tags:

python

django

In a Django project of mine, I'm using DateTimeField in a model. This essentially has python datetime.datetime instances.

What's the fastest way convert this to time since epoch (in seconds)?

like image 369
Hassan Baig Avatar asked Nov 17 '16 12:11

Hassan Baig


2 Answers

In Python 3.3+ you can use datetime.timestamp():

>>> datetime.datetime(2012,4,1,0,0).timestamp()
1333234800.0

For earlier version of Python, you can do:

# Format it into seconds
>>> datetime.datetime(2012,04,01,0,0).strftime('%s')
'1333234800'

# OR, subtract the time with 1 Jan, 1970 i.e start of epoch time
# get the difference of seconds using `total_seconds()`
>>> (datetime.datetime(2012,04,01,0,0) - datetime.datetime(1970,1,1)).total_seconds()
1333238400.0
like image 131
Moinuddin Quadri Avatar answered Oct 28 '22 19:10

Moinuddin Quadri


datetime.datetime(date).strftime('%s')

I think it would work for you.

like image 20
Afsal Salim Avatar answered Oct 28 '22 19:10

Afsal Salim