Datetime jest modułem, który pozwala na obsługę, terminach i datetimes (z których wszystkie są typy danych). Oznacza to, że datetime
jest zarówno modułem najwyższego poziomu, jak i typem w tym module. To jest mylące.
Twój błąd jest prawdopodobnie oparty na mylącym nazewnictwie modułu i tym, który użytkownik lub moduł już zaimportował.
>>> import datetime
>>> datetime
<module 'datetime' from '/usr/lib/python2.6/lib-dynload/datetime.so'>
>>> datetime.datetime(2001,5,1)
datetime.datetime(2001, 5, 1, 0, 0)
Ale jeśli importować datetime.datetime:
>>> from datetime import datetime
>>> datetime
<type 'datetime.datetime'>
>>> datetime.datetime(2001,5,1) # You shouldn't expect this to work
# as you imported the type, not the module
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: type object 'datetime.datetime' has no attribute 'datetime'
>>> datetime(2001,5,1)
datetime.datetime(2001, 5, 1, 0, 0)
podejrzewam cię lub jeden z modułów jesteś wykorzystaniem importowanych tak: from datetime import datetime
.
Dziękujemy! To zadziałało doskonale –
Dziękuję! Jest to mała rzecz do zaniedbania, ale trudna do znalezienia. – Prateek
@jozzas świetna odpowiedź. Miałem problem z timedelta, który został rozwiązany za pomocą twojego rozwiązania. Txs. –