当我输入简单代码时:
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
在我的电脑上不起作用?谢谢!
您将模块与类型混淆了。
使用:
import datetime
datetime.datetime.utcnow()
或使用:
from datetime import datetime
datetime.utcnow()
例如引用
datetime
模块中的 datetime
类型,或者将该类型从模块导入到您的命名空间中。如果您使用后一种形式并且需要该模块中的 other 类型,也不要忘记导入它们:
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)
请注意,“datetime”类中的方法“utcnow”现已弃用,并将在未来版本中删除。请参阅此 Python 3.12 发行说明了解更多信息。
您可以使用以下内容代替:
from datetime import datetime, timezone
datetime.now(timezone.utc)