获取当前年份的第一天/最后一天的日期对象
我需要获取当前年份的第一天和最后一天的date
对象。
现在我用的代码可以正常工作,但我想知道有没有更简单的方法,比如不需要手动指定月份和日期。
from datetime import date
a = date(date.today().year, 1, 1)
b = date(date.today().year, 12, 31)
7 个回答
11
如果你在新年前夜很晚的时候运行这个代码,而两次调用 today()
恰好跨越了年份的边界,那么你可能会遇到一些奇怪的问题。为了避免这种情况,最好这样做:
from datetime import date
epoch_year = date.today().year
year_start = date(epoch_year, 1, 1)
year_end = date(epoch_year, 12, 31)
29
在编程中,有时候我们需要让程序在特定的条件下执行某些操作。这就像给程序设定了一些规则,只有当这些规则被满足时,程序才会按照我们的要求去做事情。
比如说,你可能会希望当用户点击一个按钮时,程序才会显示一条消息。这种情况下,我们就需要用到“事件监听器”。事件监听器就像是一个守卫,它会时刻关注用户的操作,一旦发现用户点击了按钮,它就会立刻执行我们预先设定好的代码。
通过这种方式,我们可以让程序变得更加智能和互动,用户的每一次操作都能引发程序的反应。
from datetime import datetime
starting_day_of_current_year = datetime.now().date().replace(month=1, day=1)
ending_day_of_current_year = datetime.now().date().replace(month=12, day=31)
44
我想到的唯一真正的改进就是给你的变量起个更有描述性的名字,而不是用 a
和 b
这样的简单名字。