根据文档字符串,datetime.today
为same as self.__class__.fromtimestamp(time.time())
。虽然这一切都有道理,但我很好奇为什么它self.__class__.fromtimestamp
而不是cls.fromtimestamp
。它实际上是作为常规classmethod
实现的,但它们在文档字符串中是非显式的吗?是因为datetime
已经老了吗?这是C互操作吗?
ETA:很抱歉不清楚 - cls
通常用于代替self
课程方法:
@classmethod
def foo(cls, *args, **kwargs):
...
答案 0 :(得分:0)
datetime.today()
是一个合适的(Python 2中的本机C,Python 3中的纯Python)class method,因此它甚至不会传递self
来引用。
从_datetimemodule.c
的早期开始就是这样,所以我不知道docstring来自哪里。然而,文档字符串似乎已经存在,即使自模块的初始提交(至少到目前为止git历史记录)。它可能在某个时候是一个对象方法,在更改为类方法后,文档字符串从未更新过。
然而,如上所述,我找不到today()
曾经不是类方法的任何证据。
此外,library docs(Python 3)未提及self
:
返回当前的本地日期。这相当于
date.fromtimestamp(time.time())
。