Datetime, tarihlerin, saatlerin ve tarih saatlerinin (tümü veri türleridir) işlenmesine izin veren bir modüldür. Bu datetime, hem üst düzey bir modül olduğu hem de bu modül içinde bir tür olduğu anlamına gelir . Bu kafa karıştırıyor.
Hatanız muhtemelen modülün kafa karıştırıcı adlandırılmasına ve kullandığınız modülün zaten içe aktarılmış olmasından kaynaklanmaktadır.
>>> 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)
Ancak, datetime.datetime'ı içe aktarırsanız:
>>> 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)
Sana şüpheli veya kullandığınız modüllerin biri böyle ithal etti:
from datetime import datetime.