如标题所示,目标是让日历中的几周以周日而不是周一为主导,如下所示。我知道
calendar.setfirstweekday(calendar.SUNDAY)
应该能够做到这一点。我只是不知道如何/在哪里将其添加到此代码中,或者是否需要不同的方法。不会浪费你的时间在我试图让周日在日历中领先一周的愚蠢事情上。
显示周一周开始的当前代码:
class Calendar(HTMLCalendar):
def __init__(self, year=None, month=None, group=None):
self.year = year
self.month = month
self.group = group
super(Calendar, self).__init__()
def formatday(self, day):
d = ''
if day != 0:
return f"<td name='date-event-input' id={date(year=self.year, month=self.month, day=day)}><span " \
f"class='date'>{day}</span><ul>{d}</ul></td>"
return '<td></td>'
def formatweek(self, theweek):
week = ''
for d, weekday in theweek:
week += self.formatday(d)
return f'<tr> {week} </tr>'
def formatmonth(self, withyear=True):
cal = f'<table border="0" cellpadding="0" cellspacing="0" class="calendar" id="calendar-table-id">\n'
cal += f'{self.formatmonthname(self.year, self.month, withyear=withyear)}\n'
cal += f'{self.formatweekheader()}\n'
for week in self.monthdays2calendar(self.year, self.month):
cal += f'{self.formatweek(week)}\n'
return cal
感谢任何帮助
您可以在创建自定义日历类的实例之前设置它。它应该有效。 我的意思是;
# Set the first weekday to Sunday
calendar.setfirstweekday(calendar.SUNDAY)
# Create an instance of your custom calendar class
my_calendar = Calendar()