使用日历视图构建动态日历失败

Building dynamic calendar using calendar-view is failing

我正在尝试使用包 calendar-view 构建日历图像。下面是来自 calendar-view:

的代码
from calendar_view.calendar import Calendar
from calendar_view.core import data
from calendar_view.core.event import Event

config = data.CalendarConfig(
    lang='en',
    title='Sprint 23',
    dates='2019-09-23 - 2019-09-27',
    show_year=True,
    mode='working_hours',
    legend=False,
)
events = [
    Event('Planning', day='2019-09-23', start='11:00', end='13:00'),
    Event('Demo', day='2019-09-27', start='15:00', end='16:00'),
    Event('Retrospective', day='2019-09-27', start='17:00', end='18:00'),
]

data.validate_config(config)
data.validate_events(events, config)

calendar = Calendar.build(config)
calendar.add_events(events)
calendar.save("sprint_23.png")

这段代码工作得很好,但是,我一直在尝试动态构建一个类似的日历。与此一样,数字事件可能会增加或减少。有没有办法让这段代码表现得更动态?

以下是有关我如何尝试使其动态化的一些信息: 我将事件详细信息(如下所示)写入了一个 txt 文件。

[
    Event('Planning', day='2019-09-23', start='11:00', end='13:00'),
    Event('Demo', day='2019-09-27', start='15:00', end='16:00'),
    Event('Retrospective', day='2019-09-27', start='17:00', end='18:00'),
]

然后将文本文件读入字段'event'(如下图)

event = open("instruction.txt", "r")

但是代码失败了,因为它将从文件中读取的所有内容都视为 'str'。请查看以下错误:

AttributeError: 'str' object has no attribute 'get_start_date'

您可以使用此代码:

with open('instruction.txt', 'r') as file:
    file_content = file.read()
events = eval(file_content)

eval() 是执行字符串和 returns Python 对象的函数。