Как сравнить две подстроки, которые хранятся в словаре p?
Я пытаюсь создать матрицу смежности, основанную на сравнение совпадений между подстроками множества A.If есть перекрытие между подстроками, то я буду хранить +1 в матрице М еще wont.I уже написанный код, использующий совпадение последовательностей для сравнения строк, но при попытке выполнить код я получаю следующую ошибку.
import numpy
import array
from difflib import SequenceMatcher as sm
##
###read the file
##f=open('spectrum.txt','r')
##s=f.readlines()
##a=str(s)
a='{ATG,TGG,TGC,GTG,GGC,GCA,GCG,CGT}'
p= dict(enumerate(a[1:-1].split(",")))
print p
n= p.keys()[-1]
print p.keys()[1]
M=numpy.zeros([n,n],int)
print M
for i in range(0,n-1):
for j in range(0,n-1):
if i==j:
pass
elif sm(None,p.keys(i),p.keys(j))!=0:
M[i,j]+=1
else:
pass
print M
Возможный дубликат [Найти общую подстроку между двумя строками] (http://stackoverflow.com/questions/18715688/find-common-substring-between-two-strings) –
Мой запрос был больше на я уже написал код, использующий совпадение последовательностей для сравнения строк, но я думаю, что есть ошибка в том, как следует вызывать строки из словаря. –
Я действительно не понимаю, что вы говорите, но если у вас возникла ошибка, с которой вы ожидаете от нас, пожалуйста, напишите полный текст ошибки и полный ответ в своем вопросе (как текст, а не текст Скриншот). –