7
Il mio programma finora è:Confrontando sequenze di DNA in Python 3
seq_a = "TGGAGGCAATGGCGGCCAGCA"
seq_b = "GACTCCTCCTCCTCCTGCTCA"
len_a = len(seq_a)
len_b = len(seq_b)
print("Length of Sequence A: " + str(len_a))
print()
print("Length of Sequence B: " + str(len_b))
print()
def sequence_compare(seq_a, seq_b):
len1 = len(seq_a)
len2 = len(seq_b)
mismatches = []
for pos in range (0, min(len1, len2)) :
if seq_a[pos] != seq_b[pos]:
mismatches.append('|')
else:
mismatches.append(' ')
print (seq_a)
print (mismatches)
print (seq_b)
sequence_compare(seq_a,seq_b)
mi aspetto un'uscita lungo le linee di:
TGGAGGCAATGGCGGCCAGCA
||||||||| |||||||||
GACTCCTCCTCCTCCTGCTCA
Ma invece l'output è:
TGGAGGCAATGGCGGCCAGCA
['|', '|', '|', '|', '|', '|', '|', '|', '|', ' ', '|', '|', '|', '|', '|', '|', '|', '|', '|', ' ', ' ']
GACTCCTCCTCCTCCTGCTCA
Grazie uomo che ha lavorato super! Non sono sicuro del perché, tuttavia, stiamo ancora imparando Python 3 – luanswan2002
Tutto ciò che fa è dire: "Prendi l'elenco dei caratteri non corrispondenti in ordine e unisciti a loro per essere una singola stringa, separata da nulla". Se avessi fatto "", "join (disadattamenti)" avresti ottenuto lo stesso risultato con la separazione delle virgole invece che schiacciati insieme. –