Économies de sortie d'une boucle de fichier
J'ai ouvert un fichier avec blast résultats et imprimé les hits dans fasta format à l'écran.
Le code ressemble à ceci:
result_handle = open("/Users/jonbra/Desktop/my_blast.xml")
from Bio.Blast import NCBIXML
blast_records = NCBIXML.parse(result_handle)
blast_record = blast_records.next()
for alignment in blast_record.alignments:
for hsp in alignment.hsps:
print '>', alignment.title
print hsp.sbjct
Cette affiche une liste de fichiers fasta à l'écran.
Mais comment puis-je créer un fichier et enregistrez le fasta sortie de ce fichier?
Mise à jour: je suppose que je dois remplacer les instructions d'impression, à l'intérieur de la boucle avec quelque chose.write(), mais comment les " >', alignement.le titre nous écrit?
OriginalL'auteur Jon | 2009-11-05
Vous devez vous connecter pour publier un commentaire.
Tout d'abord, créez un fichier objet:
Vous pouvez imprimer dans un fichier objet:
Ou vous pouvez écrire à:
Vous pouvez ensuite fermer à nice:
Dans un long processus en cours d'exécution, oui, dans un script simple, il n'importe pas que les fichiers seront fermés lorsque le script se termine.
OriginalL'auteur truppo
Quelque chose comme cela
préférez ne pas utiliser
print >>
que qui ne fonctionne plus dans Python3OriginalL'auteur John La Rooy
vous pouvez utiliser
with statement
pour s'assurer que le dossier sera ferméou de l'utilisation
try ... finally
OriginalL'auteur Victor Kotseruba
Il y a deux approches. En dehors de python:
Ou, à l'intérieur de Python:
OriginalL'auteur Greg Hewgill
pour une raison quelconque le code ci-dessus posté par l'OP n'a pas de travail pour moi.. j'ai modifié un peu
OriginalL'auteur user3224522