gpt4 book ai didi

从列表中获取所有连续二元组的 Pythonic 方式

转载 作者:行者123 更新时间:2023-11-28 21:53:00 25 4
gpt4 key购买 nike

我有一个句子作为单词列表,我试图从中提取所有二元组(即所有连续的单词二元组)。所以,如果我的句子是

['To', 'sleep', 'perchance', 'to', 'dream']

我想回去

[('To', 'sleep'), ('sleep', 'perchance'), ('perchance', 'to'), ('to', 'dream')]

目前,我正在使用

zip([sentence[i] for i in range(len(sentence) - 1)], [sentence[i+1] for i in range(len(sentence) - 1)] 然后对此进行迭代,但我不禁想到还有更多 Pythonic 方法可以做到这一点。

最佳答案

zip 您走在正确的轨道上。我建议使用列表切片而不是理解。

seq = ['To', 'sleep', 'perchance', 'to', 'dream']
print zip(seq, seq[1:])

结果:

[('To', 'sleep'), ('sleep', 'perchance'), ('perchance', 'to'), ('to', 'dream')]

请注意,zip 的参数长度不必相同,因此 seq 可以比 seq[1:].

关于从列表中获取所有连续二元组的 Pythonic 方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27362611/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com