python exchangelib 项目输出

python exchangelib item output

我不知道如何从 list 循环中只获取第一项。

我正在尝试从 exchangelib 获取 first/next 日历项:

我的代码:

(...)

x = 5000 # minutes in future to look for calendar items

calendar = art(
    start=time,
    end=time + timedelta (minutes = x), 
)

for item in calendar:
    print(item.subject)

输出: 这段时间内的所有日历项目。如果我只想获取第一项/下一项,最后两行代码需要更改什么?

示例输出:

First Line
Second Line
Third Line

想要的输出:

First Line

编辑:在过去的几个月里获得了更多的知识,我现在可以回答我自己的问题了。而且很简单,我可能表达错误,人们误解了。

解决方案:

for item in calendar:
    print(item.subject)
    break # a simple break so the loop only returns the first result

列表理解一行:items = [item.subject.split()[0] for item in xyz].

总计:

items = []
for item in xyz:
    items.append(item.subject.split()[0])

如果您只想修改和使用您的代码,这里是您如何在一个列表中获取所有第一个值的方法。

test = []
for item in xyz:            
    item_split=item.subject.split()
    test.append(item_split[0])
print(test)

如果我没理解错的话,您只想拆分列表中的第一项。然后你应该只访问第一个项目(xyz[0])然后拆分它。无需遍历列表。

print(xyz[0].subject.split())

您已经在第一步中获得 ["X1"、"X2"、"X3"、...] 等。您只能在第一步中执行 print(test[:1]。或者你也可以做 xyz[0].subject.split()。这不需要任何循环。