Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

python datetime gets object has no attribute today error

I have the following 2 different datetime uses:

date=request.GET.get('date','')
    if date:
        date = datetime.strptime(date, "%m/%d/%Y")
        print date
    else:
        date = datetime.date.today()

It seems the imports needed are:

from datetime import datetime
date = datetime.strptime(date, "%m/%d/%Y")

and

import datetime
date = datetime.date.today()

I can't have both:

from datetime import datetime
import datetime

or one overrides the other.

If I have one, I get the error: object has no attribute today

How can I use both these datetime functions?

like image 665
Atma Avatar asked Aug 16 '14 20:08

Atma


2 Answers

You can alias the import names to ensure they're used differently. This is one of the reasons why datetime gets its fair share of criticism in the Python community.

What about:

from datetime import datetime as dt
import datetime

These will represent two separate things. AS shown by dir(dt) and dir(datetime)

like image 186
Viktor Chynarov Avatar answered Sep 18 '22 20:09

Viktor Chynarov


Removing .date. from your code should work:

from datetime import datetime

print datetime.strptime("12/31/2000", "%m/%d/%Y")
print datetime.today()

Output:

2000-12-31 00:00:00
2014-08-16 22:36:28.593481
like image 23
Falko Avatar answered Sep 20 '22 20:09

Falko