AttributeError: объект 'module' не имеет атрибута 'utcnow'

Когда я вводим простой код:

import datetime
datetime.utcnow()

мне дали сообщение об ошибке:

Traceback (most recent call last):
  File "<pyshell#1>", line 1, in <module>
    datetime.utcnow()
AttributeError: 'module' object has no attribute 'utcnow'

Но документ python utcnow находится здесь: https://docs.python.org/library/datetime.html#datetime.datetime.utcnow. Почему utcnow не работает на моем компьютере? Спасибо!

Ответ 1

Вы вводите в заблуждение модуль с типом.

Используйте либо:

import datetime

datetime.datetime.utcnow()

или используйте:

from datetime import datetime

datetime.utcnow()

например. либо ссылайтесь на тип datetime в модуле datetime или импортируйте этот тип в свое пространство имен из модуля. Если вы используете последнюю форму и вам нужны другие типы из этого модуля, не забудьте также их импортировать:

from datetime import date, datetime, timedelta

Демонстрация первой формы:

>>> import datetime
>>> datetime
<module 'datetime' from '/Users/mj/Development/venvs/stackoverflow-2.7/lib/python2.7/lib-dynload/datetime.so'>
>>> datetime.datetime
<type 'datetime.datetime'>
>>> datetime.datetime.utcnow()
datetime.datetime(2013, 10, 4, 23, 27, 14, 678151)