data = "MFSFVDLRLLLLLAATALLTHGQEEGQVEGQDEDIPPITCVQNGLRYHDRDVWKPEPCRICVCDNGKVLCDDVICDETKNCPGAEVPEGECCPVCPDGSESPTDQETTGVEGPKGDTGPRGPRGPAGPPGRDGIPGQPGLPGPPGPPGPPGPPGLGGNFAPQLSYGYDEKSTGGISVPGPMGPSGPRGLPGPPGAPGPQGFQGPPGEPGEPGASGPMGPRGPPGPPGKNGDDGEAGKPGRPGERGPPGPQGARGLPGTAGLPGMKGHRGFSGLDGAKGDAGPAGPKGEPGSPGENGAPGQMGPRGLPGERGRPGAPGPAGARGNDGATGAAGPPGPTGPAGPPGFPGAVGAKGEAGPQGPRGSEGPQGVRGEPGPPGPAGAAGPAGNPGADGQPGAKGANGAPGIAGAPGFPGARGPSGPQGPGGPPGPKGNSGEPGAPGSKGDTGAKGEPGPVGVQGPPGPAGEEGKRGARGEPGPTGLPGPPGERGGPGSRGFPGADGVAGPKGPAGERGSPGPAGPKGSPGEAGRPGEAGLPGAKGLTGSPGSPGPDGKTGPPGPAGQDGRPGPPGPPGARGQAGVMGFPGPKGAAGEPGKAGERGVPGPPGAVGPAGKDGEAGAQGPPGPAGPAGERGEQGPAGSPGFQGLPGPAGPPGEAGKPGEQGVPGDLGAPGPSGARGERGFPGERGVQGPPGPAGPRGANGAPGNDGAKGDAGAPGAPGSQGAPGLQGMPGERGAAGLPGPKGDRGDAGPKGADGSPGKDGVRGLTGPIGPPGPAGAPGDKGESGPSGPAGPTGARGAPGDRGEPGPPGPAGFAGPPGADGQPGAKGEPGDAGAKGDAGPPGPAGPAGPPGPIGNVGAPGAKGARGSAGPPGATGFPGAAGRVGPPGPSGNAGPPGPPGPAGKEGGKGPRGETGPAGRPGEVGPPGPPGPAGEKGSPGADGPAGAPGTPGPQGIAGQRGVVGLPGQRGERGFPGLPGPSGEPGKQGPSGASGERGPPGPMGPPGLAGPPGESGREGAPGAEGSPGRDGSPGAKGDRGETGPAGPPGAPGAPGAPGPVGPAGKSGDRGETGPAGPTGPVGPVGARGPAGPQGPRGDKGETGEQGDRGIKGHRGFSGLQGPPGPPGSPGEQGPSGASGPAGPRGPPGSAGAPGKDGLNGLPGPIGPPGPRGRTGDAGPVGPPGPPGPPGPPGPPSAGFDFSFLPQPPQEKAHDGGRYYRADDANVVRDRDLEVDTTLKSLSQQIENIRSPEGSRKNPARTCRDLKMCHSDWKSGEYWIDPNQGCNLDAIKVFCNMETGETCVYPTQPSVAQKNWYISKNPKDKRHVWFGESMTDGFQFEYGGQGSDPADVAIQLTFLRLMSTEASQNITYHCKNSVAYMDQQTGNLKKALLLQGSNEIEIRAEGNSRFTYSVTVDGCTSHTGAWGKTVIEYKTTKTSRLPIIDVAPLDVGAPDQEFGFDVGPVCFL" #prints each individual point print(len(data)) data_len = len(data) repeated_string = [] #first_repeat_instance_coord = 0 num_repeated_strings = 0 def add_repeated_string ( str ): repeated_string.append( str ) global num_repeated_strings num_repeated_strings = num_repeated_strings + 1 def string_already_in_table_of_repeats ( str ): i = 0 global num_repeated_strings return_value = 0 while (i < num_repeated_strings): if (str == repeated_string [i] ): return_value = 1 i = i + 1 return return_value substr_len = 3 substr_index=0 while ( substr_index < data_len - substr_len): i=0 count_repeats= 0 while ( i < data_len - substr_len ): if ( string_already_in_table_of_repeats (data[substr_index:substr_index+substr_len]) == 0 ): if( (data[substr_index:substr_index+substr_len] == data[i:i+substr_len]) and (i != substr_index )): if ( count_repeats == 0 ): print("coordinate of first instance of \"", data[substr_index:substr_index+substr_len], "\": ", substr_index); print( "repeat of ", data[substr_index:substr_index+substr_len], " at: ", i) count_repeats = count_repeats + 1 i = i + 1 if ( count_repeats > 0 ): print("number of repeats of \"" ,data[substr_index:substr_index+substr_len],"\": ", count_repeats) print() add_repeated_string ( data[substr_index:substr_index+substr_len] ) substr_index = substr_index + 1 print( "repeated_string " , repeated_string ) print("Number of repeats strings found: ", num_repeated_strings) #print("data[100:100+substr_len] = ", data[100:100+substr_len]) #print("i = ", i, " end: ", data[i:i+substr_len]) #print("count_repeats: ", count_repeats)