[Biopython] NCBIXML: 'generator' objecthas no attribute 'alignments'
Mic
mictadlo at gmail.com
Mon Apr 22 04:27:12 UTC 2013
My mistake. This is the solution
from Bio.Blast import NCBIXML
with open("test/XA10m_v3.0.aa.snap_vs_uniref90.blastp.xml") as bf:
blast_records = NCBIXML.parse(bf)
for blast_record in blast_records:
for alignment in *blast_record.alignments*:
for hsp in alignment.hsps:
if hsp.expect < 0.04:
print '****Alignment****'
print 'sequence:', alignment.title
print 'length:', alignment.length
print 'e value:', hsp.expect
print hsp.query[0:75] + '...'
print hsp.match[0:75] + '...'
print hsp.sbjct[0:75] + '...'
On Mon, Apr 22, 2013 at 2:05 PM, Mic <mictadlo at gmail.com> wrote:
> Hi,
> The following code (BioPython 1.61, Blast+ 2.2.26):
>
> from Bio.Blast import NCBIXML
>
> with open("test/X.xml") as bf:
> blast_records = NCBIXML.parse(bf)
>
> for blast_record in blast_records:
> for alignment in blast_records.alignments:
> for hsp in alignment.hsps:
> if hsp.expect < 0.04:
> print '****Alignment****'
> print 'sequence:', alignment.title
> print 'length:', alignment.length
> print 'e value:', hsp.expect
> print hsp.query[0:75] + '...'
> print hsp.match[0:75] + '...'
> print hsp.sbjct[0:75] + '...'
>
> caused the following error:
> $ python parseBlastXML.py
> Traceback (most recent call last):
> File "parseBlastXML.py", line 8, in <module>
> for alignment in blast_records.alignments:
> AttributeError: 'generator' object has no attribute 'alignments'
>
> What did I do wrong?
>
> Thank you in advance.
>
> Mic
>
>
>
More information about the Biopython
mailing list