【发布时间】:2014-07-09 20:27:19
【问题描述】:
我想获得一个不“滑动”但只是增加的滑动窗口,例如序列“ATCGATCGA”的宽度为 1 我想接收这些: (A)(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
【问题讨论】:
-
您发布的代码与错误信息中显示的代码不同。
-
我不认为最后一个代码 sn-p 与错误真正相关,但第一个 sn-p 确实是导致所描述错误的原因
-
@200 好的,那是因为我继续编辑它,现在也把它放回原来的位置,所以它们匹配。
-
@logc 我已经删除了最后一个代码,不确定是否相关或不那么认为不妨把它放进去。
-
@Tom Google 错误信息,它已经被问过百万次了。
标签: python python-2.7 sliding-window