我有一个整数列表,想要找出其中所有长度为n的连续子序列。例如:
>>> int_list = [1,4,6,7,8,9]
>>> conseq_sequences(int_list, length=3)
[[6,7,8], [7,8,9]]
我能提供的最佳翻译如下:
我所能想到的最好的方案是:
def conseq_sequences(self, li, length):
return [li[n:n+length]
for n in xrange(len(li)-length+1)
if li[n:n+length] == range(li[n], li[n]+length)]
这段内容阅读起来有点吃力。有没有更易懂的Pythonic方式来实现它?