27

当我输入简单的代码时:

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不能在我的电脑上工作?谢谢!

4

1 回答 1

60

您将模块与类型混淆了。

使用任一:

import datetime

datetime.datetime.utcnow()

或使用:

from datetime import datetime

datetime.utcnow()

例如,要么引用模块中的类型,要么将该datetime类型从datetime模块中导入您的命名空间。如果您使用后一种形式并需要该模块中的其他类型,请不要忘记也导入它们:

from datetime import date, datetime, timedelta

第一种形式的Demo:

>>> 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)
于 2013-10-04T23:24:40.783 回答