首页 > 解决方案 > 为什么 date.day 是一个属性,而不是 date.today() 之类的方法?

问题描述

为什么使用 [0]date.day 的属性而不是像 [1]date.today() 这样的方法

[0] https://docs.python.org/3/library/datetime.html#datetime.date.day

[1] https://docs.python.org/3/library/datetime.html#datetime.date.today

标签: pythondatetimemethodsattributes

解决方案


day 是日期对象(类的实例 = 任何特定日期)的属性,在对象更改之前不会更改。

今天是一个类方法。需要调用它来检查当前日期。它在不同的日子返回不同的结果。调用此方法不需要对象。

举个例子:

import datetime as dt

today = dt.date.today()  # returns value when code is executed
print(today)  # 2020-07-19 (or what ever day it is)

anotherday = dt.date(2001,01,01)  # defines a date object
day = anotherday.day
print(day)  # gives always 01

推荐阅读