J'ai écrit ce codeLa répétition d'une fonction sur plusieurs éléments dans une liste
import sys
file = open(sys.argv[1], 'r')
string = ''
for line in file:
if line.startswith(">"):
pass
else:
string = string + line.strip()
#print (list(string))
w = input("Please enter window size:")
test = [string[i:i+w] for i in range (0,len(string),w)]
seq = input("Please enter the number of sequences you wish to read:")
#print (test[0:seq])
Il génère une liste qui ressemble this-
['TAAAACACCC', 'TCAATTCAAG', 'GGTTTTTGAG', 'CGAGCTTTTT', 'ACTCAAAGAA', 'TCCAAGATAG', 'CGTTTAAAAA', 'TTTAGGGGTG', 'TTAGGCTCAG', 'CATAGAGTTT']
Maintenant, l'étape suivante consiste à lire la l'occurrence des lettres GC
(ou peut être CG
) dans chaque élément de la liste. Y at-il un moyen de boucle à travers la liste de telle sorte que le fichier de sortie ressemble à:
Segment 1- The %GC is <the calculated number>
Segment 2- The %GC is <the calculated number>
Segment 3- The %GC is <the calculated number>
Depuis le fichier est wayy à grande et le nombre de segments (chaque élément individuel de la liste comme 'TAAGATATA'
) i sera obtenir sera énorme, je ne sais pas comment obtenir le numéro (1,2,3 ...) du segment dans le fichier de sortie. Aussi depuis que je suis nouveau à python (et programmation) je ne suis pas très bon à l'utilisation des fonctions très bien.
Montrez-nous votre code que vous avez écrit jusqu'à présent, frère –
Je ne comprends pas la question - pouvez-vous donner un exemple plus explicite, que sont les segments dans ce contexte? –
@ TheodrosZelleke- C'est un programme biologique. prendra beaucoup de temps pour expliquer et est inutile. Tout ce que je veux, c'est faire une boucle dans le fichier afin de pouvoir obtenir le numéro de segment (chaque élément de list = segemnt) et son GC% correspondant (dont je peux m'occuper) –