在 Python 的 iCal 格式文件中搜索事件
Searching for events in an iCal formatted file in Python
我只想查看 iCal 文件中适用于今天的事件。这是我的代码:
from icalendar import Calendar, Event
from datetime import datetime
g = open('reachcalendar.ics','rb')
cal = Calendar.from_ical(g.read())
for component in cal.walk():
if component.name == "VEVENT":
if component.get('dtstart').date() == datetime.today().date()
print component.get('summary')
print component.get('dtstart').dt
g.close()
但这会导致语法无效:
File "today.py", line 9
if component.get('dtstart').date() == datetime.today().date()
^
SyntaxError: invalid syntax
我做错了什么?
您缺少行尾的 :
:
if component.get('dtstart').date() == datetime.today().date():
# HERE^
除此之外,您可能不应该在循环内调用 datetime.today()
,在之前调用它,记住值并在循环内使用:
today = datetime.today().date()
for component in cal.walk():
if component.name == "VEVENT" and component.get('dtstart').date() == today:
print component.get('summary')
print component.get('dtstart').dt
我只想查看 iCal 文件中适用于今天的事件。这是我的代码:
from icalendar import Calendar, Event
from datetime import datetime
g = open('reachcalendar.ics','rb')
cal = Calendar.from_ical(g.read())
for component in cal.walk():
if component.name == "VEVENT":
if component.get('dtstart').date() == datetime.today().date()
print component.get('summary')
print component.get('dtstart').dt
g.close()
但这会导致语法无效:
File "today.py", line 9
if component.get('dtstart').date() == datetime.today().date()
^
SyntaxError: invalid syntax
我做错了什么?
您缺少行尾的 :
:
if component.get('dtstart').date() == datetime.today().date():
# HERE^
除此之外,您可能不应该在循环内调用 datetime.today()
,在之前调用它,记住值并在循环内使用:
today = datetime.today().date()
for component in cal.walk():
if component.name == "VEVENT" and component.get('dtstart').date() == today:
print component.get('summary')
print component.get('dtstart').dt