Skip to main content
 首页 » 编程设计

python模拟时间,找出每个月的月底

2025年05月04日23Terrylee

我正在尝试在我的程序中模拟时间变化。例如,如果我(今天)从 0 2016 年 10 月 26 日开始(我的 var 'param' 从 0 开始),那么现实世界中的一秒将是我程序中的一小时。所以每 1 秒通过我的'param += 1'。然后我可以模拟小时的时间变化。

现在我想在每个月的每个月初做一些统计。在这种情况下,我想做的第一个统计数据是 2016 年 11 月 1 日凌晨 0 点。我的问题是如何通过“param”的值找到这一点(每个月初)

today = date.today() 
    if t0 == '0': 
        time_now = today.strftime("%Y-%m-%d %H") 
    else: 
        time_now = (today + relativedelta(hours=int(param))).strftime("%Y-%m-%d %H") 

请您参考如下方法:

这可能对你有用:

from datetime import datetime 
from dateutil.relativedelta import relativedelta 
 
 
def seconds_until_next_month(): 
    return (datetime(year=datetime.now().year, month=datetime.now().month, day=1) + 
            relativedelta(months=1) - datetime.now()).seconds 
 
 
def hours_until_next_month(): 
    return seconds_until_next_month()/60.0/60.0 

这里的技巧是使用 dateutil.relativedelta 来递增当前月份。这将在年底前妥善包装。