使用日历视图构建动态日历失败
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 对象的函数。
我正在尝试使用包 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 对象的函数。