在python中改变一周的开始日期后得到当前周数的算法?

2024-09-28 22:27:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我想设计一个算法,它将根据起始周-日集计算周数。例如:-如果我将开始日期设置为WEDNESDAY,当前是它的40周,它的TUESDAY,它应该打印40作为周数。如果是星期三或星期四,我应该得到41。在

把它想象成一个循环。从星期三到星期二,它应该被分配一个星期no+1,然后当下星期三到来时,周应该再次增加。在

我尝试使用calendar.setfirstweekday(calendar.WEDNESDAY),然后改变我的系统机器时间,每次我得到的是40作为周数。在

如何在python中设计比如算法?在

我这个月也有类似的问题,但我已经为它设计了一个解决方案。给你。在

current_date = datetime.datetime.now()
if current_date.day < gv.month_start_date:
    month   = current_date.month -1
    if month == 0:
        month = 12
    else:
        month = current_date.month

我怎么设计一周的时间?在


Tags: no算法datetimedateif系统时间current
2条回答

datetime in python有一个名为isocalender的函数来获取ISO周数(从周一开始)

import datetime
datetime.date(2013, 9, 30).isocalendar()[1]

你可以用一点逻辑来使用它(这个脚本应该在星期三开始一周)

^{pr2}$

我终于想出了一个解决办法。在

if current_day >= set_week_day:
    week = current_week
else:
    week = current_week - 1

适用于所有情况。在

相关问题 更多 >