Странная проблема импорта даты и времени в Python - PullRequest
4 голосов
/ 03 мая 2011

Привет Я считаю, что эта проблема проявляется по-разному на разных установках. У меня была одна из следующих работ, в то время как другие терпели неудачу, и это иногда меняется (то есть, один фрагмент не будет работать в одной настройке, а другой - в другой)

from datetime import datetime
datetime.datetime.utcnow()


import datetime
datetime.datetime.utcnow()

Например, я только что обновился до версии Python 2.7 с версии 2.6 и первого фрагмента, который до этого работал нормально.

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

это нормально, но тот же фрагмент работал в 2.6, в то время как второй фрагмент не удался. Теперь все наоборот ...

Это довольно странная проблема ...

Спасибо Harel

Ответы [ 3 ]

4 голосов
/ 03 мая 2011

Если вы делаете from datetime import datetime, вам нужно использовать datetime.utcnow() вместо datetime.datetime.utcnow(). Я не могу понять, как ваш первый фрагмент мог когда-либо работать.

>>> from datetime import datetime
>>> datetime.datetime.utcnow()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: type object 'datetime.datetime' has no attribute 'datetime'
>>> datetime.utcnow()
datetime.datetime(2011, 5, 3, 14, 10, 36, 30592)
4 голосов
/ 03 мая 2011

Другие ответы здесь верны (ваш импорт неверен), но вот фрагмент, который прояснит, что происходит, когда вы делаете это.

>>> import datetime
>>> type(datetime)
<class 'module'>
>>> type(datetime.datetime)
<class 'type'>
>>> from datetime import datetime
>>> type(datetime)
<class 'type'>
0 голосов
/ 03 мая 2011

Вы ошибаетесь.Первый фрагмент неверен в обеих версиях.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...