此问题的算法已在 this 中讨论过问题。
正如该帖子所说,最大的挑战是处理重复发生的事件。并且不要在第一个答案中重新发明轮子,所以我很高兴知道:
是否已经有任何现成的模块或框架可以在 Python 中处理这个问题?
请您参考如下方法:
我最近为 Django 构建了一个类似于 Google 日历的应用程序。虽然我们还没有包括重新发生的事件,但我认为这应该不会太困难。我建议调查 dateutil ,它可以使用 rrule 做一些很好的间隔事情。
对于前端,我们使用了 jquery week-calendar这给你很好的拖放/调整大小的东西。我们还使用了 Vobject创建 iCal 源,这样用户就可以将我们的日历整合到他们喜欢的日历客户端中。
