2009-11-15 6 views
0

J'ai donc une séquence d'ADN.Compte le nombre d'occurrences de lettres dans une chaîne Python

ACCAGAGCGGCACAGCAGCGACATCAGCACTAGCACTAGCATCAGCATCAGCATCAGC 
CTACATCATCACAGCAGCATCAGCATCGACATCAGCATCAGCATCAGCATCGACGACT 
ACACCCCCCCCGGTGTGTGTGGGGGGTTAAAAATGATGAGTGATGAGTGAGTTGTGTG 
CTACATCATCACAGCAGCATCAGCATCGACATCAGCATCAGCATCAGCATCGACGACT 
TTCTATCATCATTCGGCGGGGGGATATATTATAGCGCGCGATTATTGCGCAGTCTACG 
TCATCGACTACGATCAGCATCAGCATCAGCATCAGCATCGACTAGCATCAGCTACGAC 

J'ai besoin de compter les bases.

Pour une raison quelconque, il peut parfois aussi alterner entre majuscules et minuscules dans la même chaîne.

+0

Veuillez marquer les devoirs avec la balise [devoirs]. –

+0

ce n'était pas hw BRO – y2k

+0

Je pense que la question est parfaitement bien. Même si c'était les devoirs, c'est un problème intéressant. Pourquoi ne pas le demander ici? +1 de moi – lhk

Répondre

7
for base in 'ACGT': 
    print base, thesequence.count(base) + thesequence.count(base.lower()) 
+0

Merci père de tout coeur. – y2k

+0

Par curiosité, y a-t-il une raison pour que vous ne fassiez pas le fichier sequence.lower(). Count (base.lower()) à la place? Je suppose que c'est pour le rendre plus rapide, mais je ne suis pas sûr à 100%. –

+0

Ce n'est pas forcément plus rapide de cette façon, mais cela demande moins de mémoire. Puisque les séquences d'ADN peuvent être ** longues **, cela peut être important. – sth

Questions connexes