1

在我尝试这个之前,我以为我了解 python 模块

import datetime
datetime.now()


() 1 导入日期时间中的 AttributeError Traceback (最近一次调用最后一次)

----> 2 datetime.now() AttributeError: 'module' 对象没有属性 'now'

from datetime import *
datetime.now()

datetime.datetime(2013, 9, 13, 16, 35, 4, 433977)

from datetime import now

ImportError Traceback (last last call last) in () ----> 1 from datetime import now ImportError: cannot import name now

我认为我知道 python 模块的错觉立即消失了。我正在使用 ipython 笔记本

谢谢

4

1 回答 1

4

datetime模块中有一个类叫做 datetime. 这:

import datetime

不直接导入此类:您必须使用datetime.datetime. datetime单独是指datetime模块本身。然而,这:

from datetime import *

确实导入了该类(以及模块中的所有其他内容),这就是为什么您可以使用 simple 引用它datetime,而不是使用模块名称限定的原因。

您的第三个片段不起作用的原因再次是因为您正在引用datetime没有now成员的模块。确实,nowdatetime 的一部分。

于 2013-09-13T15:39:48.667 回答