<snip> Based on former advice, I made a correction/modification on the below code.
1] the set and subgroup does not work, here I wish to put all the subgroup in a big set, the set like $ python3 LongestCommonSubstring.py | uniq {"1',"} {"1', "} {"1', '"} {"1', '8"} {"1', '82"} {"1', '82'"} {"1', '82',"} {"1', '82', "} {"1', '82', '"} {"6', '61', '6"} {"', '61', '63'"} {"', '61', '63',"} {"', '61', '63', "} {"', '61', '63', '"} {"', '61', '63', '6"} {"', '61', '70', '61"} {"', '61', '70', '61'"} {"', '83', '61', '83',"} {"', '83', '61', '83', "} {"', '83', '61', '83', '"} Please kindly notice I added a pipeline with uniq at the end, the true prints were lots of replications, I don't know how to handle it in the python code. 2] I still have trouble in reading files, mainly about not read "" etc. Thanks with best regards, #!/usr/bin/python3 import os.path xrange = range subgroups=[] subgroup=[] def LongestCommonSubstring(S1, S2): M = [[0]*(1+len(S2)) for i in xrange(1+len(S1))] longest, x_longest = 0, 0 for x in xrange(1,1+len(S1)): for y in xrange(1,1+len(S2)): if S1[x-1] == S2[y-1]: M[x][y] = M[x-1][y-1]+1 if M[x][y] > longest: longest = M[x][y] x_longest = x if longest >= 3: subgroup=S1[x_longest-longest:x_longest] subgroups=set([subgroup]) print(subgroups) else: M[x][y] = 0 return S1[x_longest-longest:x_longest] if __name__=="__main__": a=open("atom-pair_4.txt","r").readline().strip() b=open("atom-pair_8.txt","r").readline().strip() LongestCommonSubstring(a,b) _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: http://mail.python.org/mailman/listinfo/tutor