Поведение генератора Python
import itertools
ws=[]
subs=[]
set_subs=[]
for i in xrange(int(raw_input())):
S=raw_input()
l=len(S)
subs.append(S[i:j+1] for i in xrange(l) for j in xrange(i,l))
вход:
2
aab
aac
теперь обаsubs[0]
а такжеsubs[1]
дай мне тот же результат.
print list(subs[0])
>>>['a','aa','aac','a','ac','c']
print list(subs[1])
>>>['a','aa','aac','a','ac','c']
в то время какlist(subs[0])
должно было['a','aa','aab','a','ab','b']
Я смутно понимаю, почему это происходит. Что я делаю, чтобы сделатьsubs[0]
а такжеsubs[1]
на самом деле разные.
NOTE: изменение строки
subs.append(S[i:j+1] for i in xrange(l) for j in xrange(i,l))
с
subs.append([S[i:j+1] for i in xrange(l) for j in xrange(i,l)])
это не вариант