滑动窗口增加



我想获得一个滑动窗口,不'滑动',但只是增加,如如果宽度为1序列'ATCGATCGA'我想接收这些:(A) (T) (A、T、C) (A、T、C、G) (A、T、C、G、A) (A、T、C、G、A、T) (A、T、C、G、A、T、C) (A、T、C、G、A、T、C、G) (A、T、C、G、A、T、C、G、A)

理想情况下,我希望它从9开始滑动,因此为什么在代码中我一直在研究它n=1+8+ I。我认为,通过枚举滑动,它每次都会增加,因此会增加,但下面的错误出现

代码:未遂

def Slide_merge (seq):
    n=1+8+i
    it= iter(seq)
    for i, in enumerate(list(islice(it, n))):
        print it
        print n

错误信息:

<ipython-input-1-80c92e1a3f14> in Slide_merge(seq)
      1 import itertools
      2 def Slide_merge (seq):
----> 3     n=1+8+i
      4     it= iter(seq)
      5     for i, in enumerate(list(islice(it, n))):
UnboundLocalError: local variable 'i' referenced before assignment

如何切片序列自己?

In [12]: def slide_merge(seq):
   ....:     for i in range(1, len(seq)):
   ....:         print seq[0:i]
   ....:
In [13]: slide_merge('ATCGATCGA')
A
AT
ATC
ATCG
ATCGA
ATCGAT
ATCGATC
ATCGATCG

相关内容

  • 没有找到相关文章

最新更新