Bonjour à tous !
Actuellement étudiante je travaille sur un script qui me pose quelques problèmes.
Le but est de sélectionner certaines lignes et de les écrire dans un autre fichier. Le fichier d'entrée contient des informations de ce type :

>SRT_90m0 (l'identifiant)
ERGTHOHIJQBHILUIRGHBVEGHIEUAZ (la séquence)
>SRH_90m5
IUERRGHIUEGHIUERGHIUEGHTH
>SRT_90m8
ERGTHEUUGHMREPEKLANAEHUAZ

J'aimerais par exemple enregistrer toutes les info (identifiants + séquences) des données ayant SRT dans leur identifiant pour avoir seulement ces données là dans un fichier (je ne sais pas si ce que je raconte est très clair )

Pour ça j'ai fait ce script :


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
def IDseq(f1,f2,nom):
    a=open(f1,'r')#on ouvre notre fichier entree
    b=open(f2,'w')#on ouvre notre fichier sortie
    ligne=a.read()#ligne correspond a la lecture du fichier a
    fin=0
    while ligne:
        deb=ligne[fin:].find(nom)#on cherche nom dans tout le fichier a partir de 0
        fin=ligne[deb:].find(">")+len(">")#on cherche > et ce qu'il y a avant a parti du nom
        b.write(ligne[deb:fin])#on ecrit tout ce qu on a entre nos balises inclues
    a.close()
    b.close()
 
IDseq(r"C:\Users\33652\Desktop\programme\entree.txt", r"C:\Users\33652\Desktop\programme\sortie.txt", "SFR")
Rien ne s'écrit dans mon fichier de sortie, pouvez-vous m'éclairer ?
Merci d'avance !