<?xml version="1.0" encoding="ascii"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>Bio.AlignIO</title> <link rel="stylesheet" href="epydoc.css" type="text/css" /> <script type="text/javascript" src="epydoc.js"></script> </head> <body bgcolor="white" text="black" link="blue" vlink="#204080" alink="#204080"> <!-- ==================== NAVIGATION BAR ==================== --> <table class="navbar" border="0" width="100%" cellpadding="0" bgcolor="#a0c0ff" cellspacing="0"> <tr valign="middle"> <!-- Tree link --> <th> <a href="module-tree.html">Trees</a> </th> <!-- Index link --> <th> <a href="identifier-index.html">Indices</a> </th> <!-- Help link --> <th> <a href="help.html">Help</a> </th> <th class="navbar" width="100%"></th> </tr> </table> <table width="100%" cellpadding="0" cellspacing="0"> <tr valign="top"> <td width="100%"> <span class="breadcrumbs"> <a href="Bio-module.html">Package Bio</a> :: Package AlignIO </span> </td> <td> <table cellpadding="0" cellspacing="0"> <!-- hide/show private --> <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink" onclick="toggle_private();">hide private</a>]</span></td></tr> <tr><td align="right"><span class="options" >[<a href="frames.html" target="_top">frames</a >] | <a href="Bio.AlignIO-pysrc.html" target="_top">no frames</a>]</span></td></tr> </table> </td> </tr> </table> <h1 class="epydoc">Source Code for <a href="Bio.AlignIO-module.html">Package Bio.AlignIO</a></h1> <pre class="py-src"> <a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright 2008 by Peter Cock. All rights reserved.</tt> </tt> <a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment"></tt><tt class="py-comment"># This code is part of the Biopython distribution and governed by its</tt> </tt> <a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"></tt><tt class="py-comment"># license. Please see the LICENSE file that should have been included</tt> </tt> <a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment"></tt><tt class="py-comment"># as part of this package.</tt> </tt> <a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"></tt> </tt> <a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring">"""Alignment input/output designed to look similar to Bio.SeqIO.</tt> </tt> <a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring">Input</tt> </tt> <a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring">=====</tt> </tt> <a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-docstring">For the typical special case when your file or handle contains one and only</tt> </tt> <a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-docstring">one alignment, use the function Bio.AlignIO.read(). This takes an input file</tt> </tt> <a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-docstring">handle, format string and optional number of sequences per alignment. It will</tt> </tt> <a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-docstring">return a single Alignment object (or raise an exception if there isn't just</tt> </tt> <a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-docstring">one alignment):</tt> </tt> <a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-docstring"> from Bio import AlignIO</tt> </tt> <a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-docstring"> handle = open("example.aln", "rU")</tt> </tt> <a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"><tt class="py-docstring"> align = AlignIO.read(handle, "clustal")</tt> </tt> <a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring"> handle.close()</tt> </tt> <a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring"> print align</tt> </tt> <a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-docstring">For the general case, when the handle could contain any number of alignments,</tt> </tt> <a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-docstring">use the function Bio.AlignIO.parse(...) which takes the same arguments, but</tt> </tt> <a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-docstring">returns an iterator giving Alignment objects. For example, using the output</tt> </tt> <a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-docstring">from the EMBOSS water or needle pairwise alignment prorams:</tt> </tt> <a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"><tt class="py-docstring"> from Bio import AlignIO</tt> </tt> <a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"><tt class="py-docstring"> handle = open("example.txt", "rU")</tt> </tt> <a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"><tt class="py-docstring"> for alignment in AlignIO.parse(handle, "emboss") :</tt> </tt> <a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"><tt class="py-docstring"> print alignment</tt> </tt> <a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"><tt class="py-docstring">If you want random access to the alignments by number, turn this into a list:</tt> </tt> <a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"><tt class="py-docstring"> from Bio import AlignIO</tt> </tt> <a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"><tt class="py-docstring"> handle = open("example.aln", "rU")</tt> </tt> <a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"><tt class="py-docstring"> alignments = list(AlignIO.parse(handle, "clustal"))</tt> </tt> <a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"><tt class="py-docstring"> print alignments[0]</tt> </tt> <a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"><tt class="py-docstring">Most alignment file formats can be concatenated so as to hold as many</tt> </tt> <a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"><tt class="py-docstring">different multiple sequence alignments as possible. One common example</tt> </tt> <a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"><tt class="py-docstring">is the output of the tool seqboot in the PHLYIP suite. Sometimes there</tt> </tt> <a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"><tt class="py-docstring">can be a file header and footer, as seen in the EMBOSS alignment output.</tt> </tt> <a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"><tt class="py-docstring">There is an optional argument for the number of sequences per alignment which</tt> </tt> <a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"><tt class="py-docstring">is usually only needed with the alignments stored in the FASTA format.</tt> </tt> <a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"><tt class="py-docstring">Without this information, there is no clear way to tell if you have say a</tt> </tt> <a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"><tt class="py-docstring">single alignment of 20 sequences, or four alignments of 5 sequences. e.g.</tt> </tt> <a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"><tt class="py-docstring"> from Bio import AlignIO</tt> </tt> <a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"><tt class="py-docstring"> handle = open("example.faa", "rU")</tt> </tt> <a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"><tt class="py-docstring"> for alignment in AlignIO.parse(handle, "fasta", seq_count=5) :</tt> </tt> <a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"><tt class="py-docstring"> print alignment</tt> </tt> <a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"><tt class="py-docstring">The above code would split up the FASTA files, and try and batch every five</tt> </tt> <a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"><tt class="py-docstring">sequences into an alignment.</tt> </tt> <a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"><tt class="py-docstring">Output</tt> </tt> <a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"><tt class="py-docstring">======</tt> </tt> <a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"><tt class="py-docstring">Use the function Bio.AlignIO.write(...), which takes a complete set of</tt> </tt> <a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"><tt class="py-docstring">Alignment objects (either as a list, or an iterator), an output file handle</tt> </tt> <a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"><tt class="py-docstring">and of course the file format.</tt> </tt> <a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"><tt class="py-docstring"> from Bio import AlignIO</tt> </tt> <a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"><tt class="py-docstring"> alignments = ...</tt> </tt> <a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"><tt class="py-docstring"> handle = open("example.faa", "w")</tt> </tt> <a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"><tt class="py-docstring"> alignment = SeqIO.write(alignments, handle, "fasta")</tt> </tt> <a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"><tt class="py-docstring"> handle.close()</tt> </tt> <a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"><tt class="py-docstring">In general, you are expected to call this function once (with all your</tt> </tt> <a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"><tt class="py-docstring">alignments) and then close the file handle. However, for file formats</tt> </tt> <a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"><tt class="py-docstring">like PHYLIP where multiple alignments are stored sequentially (with no file</tt> </tt> <a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"><tt class="py-docstring">header and footer), then multiple calls to the write function should work as</tt> </tt> <a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"><tt class="py-docstring">expected.</tt> </tt> <a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"><tt class="py-docstring">File Formats</tt> </tt> <a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"><tt class="py-docstring">============</tt> </tt> <a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"><tt class="py-docstring">When specifying the file format, use lowercase strings. The same format</tt> </tt> <a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"><tt class="py-docstring">names are also used in Bio.SeqIO and include the following:</tt> </tt> <a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"><tt class="py-docstring">clustal - Ouput from Clustal W or X, see also the module Bio.Clustalw</tt> </tt> <a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"><tt class="py-docstring"> which can be used to run the command line tool from Biopython.</tt> </tt> <a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"><tt class="py-docstring">emboss - The "pairs" and "simple" alignment format from the EMBOSS tools.</tt> </tt> <a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"><tt class="py-docstring">fasta - The generic sequence file format where each record starts with a</tt> </tt> <a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"><tt class="py-docstring"> identifer line starting with a ">" character, followed by lines</tt> </tt> <a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"><tt class="py-docstring"> of sequence.</tt> </tt> <a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"><tt class="py-docstring">fasta-m10 - For the pairswise alignments output by Bill Pearson's FASTA</tt> </tt> <a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"><tt class="py-docstring"> tools when used with the -m 10 command line option for machine</tt> </tt> <a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"><tt class="py-docstring"> readable output.</tt> </tt> <a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"><tt class="py-docstring">nexus - Output from NEXUS, see also the module Bio.Nexus which can also</tt> </tt> <a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"><tt class="py-docstring"> read any phylogenetic trees in these files.</tt> </tt> <a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"><tt class="py-docstring">phylip - Used by the PHLIP tools.</tt> </tt> <a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"><tt class="py-docstring">stockholm - A richly annotated alignment file format used by PFAM.</tt> </tt> <a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"><tt class="py-docstring">Further Information</tt> </tt> <a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"><tt class="py-docstring">===================</tt> </tt> <a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"><tt class="py-docstring">See the wiki page biopython.org/wiki/AlignIO and also the Bio.AlignIO chapter</tt> </tt> <a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"><tt class="py-docstring">in the Biopython Tutorial and Cookbook which is also available online:</tt> </tt> <a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"><tt class="py-docstring">http://biopython.org/DIST/docs/tutorial/Tutorial.html</tt> </tt> <a name="L100"></a><tt class="py-lineno"> 100</tt> <tt class="py-line"><tt class="py-docstring">http://biopython.org/DIST/docs/tutorial/Tutorial.pdf</tt> </tt> <a name="L101"></a><tt class="py-lineno"> 101</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt> <a name="L102"></a><tt class="py-lineno"> 102</tt> <tt class="py-line"> </tt> <a name="L103"></a><tt class="py-lineno"> 103</tt> <tt class="py-line"><tt class="py-comment">#TODO</tt> </tt> <a name="L104"></a><tt class="py-lineno"> 104</tt> <tt class="py-line"><tt class="py-comment"></tt><tt class="py-comment"># - define policy on reading aligned sequences with gaps in</tt> </tt> <a name="L105"></a><tt class="py-lineno"> 105</tt> <tt class="py-line"><tt class="py-comment"></tt><tt class="py-comment"># (e.g. - and . characters) including how the alphabet interacts</tt> </tt> <a name="L106"></a><tt class="py-lineno"> 106</tt> <tt class="py-line"><tt class="py-comment"></tt><tt class="py-comment">#</tt> </tt> <a name="L107"></a><tt class="py-lineno"> 107</tt> <tt class="py-line"><tt class="py-comment"></tt><tt class="py-comment"># - Can we build the to_alignment(...) functionality</tt> </tt> <a name="L108"></a><tt class="py-lineno"> 108</tt> <tt class="py-line"><tt class="py-comment"></tt><tt class="py-comment"># into the generic Alignment class instead?</tt> </tt> <a name="L109"></a><tt class="py-lineno"> 109</tt> <tt class="py-line"><tt class="py-comment"></tt><tt class="py-comment">#</tt> </tt> <a name="L110"></a><tt class="py-lineno"> 110</tt> <tt class="py-line"><tt class="py-comment"></tt><tt class="py-comment"># - How best to handle unique/non unique record.id when writing.</tt> </tt> <a name="L111"></a><tt class="py-lineno"> 111</tt> <tt class="py-line"><tt class="py-comment"></tt><tt class="py-comment"># For most file formats reading such files is fine; The stockholm</tt> </tt> <a name="L112"></a><tt class="py-lineno"> 112</tt> <tt class="py-line"><tt class="py-comment"></tt><tt class="py-comment"># parser would fail.</tt> </tt> <a name="L113"></a><tt class="py-lineno"> 113</tt> <tt class="py-line"><tt class="py-comment"></tt><tt class="py-comment">#</tt> </tt> <a name="L114"></a><tt class="py-lineno"> 114</tt> <tt class="py-line"><tt class="py-comment"></tt><tt class="py-comment"># - MSF multiple alignment format, aka GCG, aka PileUp format (*.msf)</tt> </tt> <a name="L115"></a><tt class="py-lineno"> 115</tt> <tt class="py-line"><tt class="py-comment"></tt><tt class="py-comment"># http://www.bioperl.org/wiki/MSF_multiple_alignment_format </tt> </tt> <a name="L116"></a><tt class="py-lineno"> 116</tt> <tt class="py-line"><tt class="py-comment"></tt> </tt> <a name="L117"></a><tt class="py-lineno"> 117</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt> <a name="L118"></a><tt class="py-lineno"> 118</tt> <tt class="py-line"><tt class="py-comment">#from cStringIO import StringIO</tt> </tt> <a name="L119"></a><tt class="py-lineno"> 119</tt> <tt class="py-line"><tt class="py-comment"></tt><tt class="py-keyword">from</tt> <tt class="py-name">StringIO</tt> <tt class="py-keyword">import</tt> <tt class="py-name">StringIO</tt> </tt> <a name="L120"></a><tt class="py-lineno"> 120</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package Bio=Bio-module.html"><a title="Bio" class="py-name" href="#" onclick="return doclink('link-0', 'Bio', 'link-0');">Bio</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Package Bio.Alphabet=Bio.Alphabet-module.html,Class Bio.Alphabet.Alphabet=Bio.Alphabet.Alphabet-class.html"><a title="Bio.Alphabet Bio.Alphabet.Alphabet" class="py-name" href="#" onclick="return doclink('link-1', 'Alphabet', 'link-1');">Alphabet</a></tt> <tt class="py-keyword">import</tt> <tt id="link-2" class="py-name" targets="Variable Bio.Alphabet.generic_alphabet=Bio.Alphabet-module.html#generic_alphabet"><a title="Bio.Alphabet.generic_alphabet" class="py-name" href="#" onclick="return doclink('link-2', 'generic_alphabet', 'link-2');">generic_alphabet</a></tt><tt class="py-op">,</tt> <tt id="link-3" class="py-name" targets="Variable Bio.Alphabet.generic_protein=Bio.Alphabet-module.html#generic_protein"><a title="Bio.Alphabet.generic_protein" class="py-name" href="#" onclick="return doclink('link-3', 'generic_protein', 'link-3');">generic_protein</a></tt> </tt> <a name="L121"></a><tt class="py-lineno"> 121</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-4" class="py-name"><a title="Bio" class="py-name" href="#" onclick="return doclink('link-4', 'Bio', 'link-0');">Bio</a></tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Module Bio.Seq=Bio.Seq-module.html,Class Bio.Seq.Seq=Bio.Seq.Seq-class.html,Class Martel.Expression.Seq=Martel.Expression.Seq-class.html,Function Martel.Seq()=Martel-module.html#Seq"><a title="Bio.Seq Bio.Seq.Seq Martel.Expression.Seq Martel.Seq" class="py-name" href="#" onclick="return doclink('link-5', 'Seq', 'link-5');">Seq</a></tt> <tt class="py-keyword">import</tt> <tt id="link-6" class="py-name"><a title="Bio.Seq Bio.Seq.Seq Martel.Expression.Seq Martel.Seq" class="py-name" href="#" onclick="return doclink('link-6', 'Seq', 'link-5');">Seq</a></tt> </tt> <a name="L122"></a><tt class="py-lineno"> 122</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-7" class="py-name"><a title="Bio" class="py-name" href="#" onclick="return doclink('link-7', 'Bio', 'link-0');">Bio</a></tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Module Bio.SeqRecord=Bio.SeqRecord-module.html,Class Bio.SeqRecord.SeqRecord=Bio.SeqRecord.SeqRecord-class.html,Package Bio.builders.SeqRecord=Bio.builders.SeqRecord-module.html,Package Bio.writers.SeqRecord=Bio.writers.SeqRecord-module.html"><a title="Bio.SeqRecord Bio.SeqRecord.SeqRecord Bio.builders.SeqRecord Bio.writers.SeqRecord" class="py-name" href="#" onclick="return doclink('link-8', 'SeqRecord', 'link-8');">SeqRecord</a></tt> <tt class="py-keyword">import</tt> <tt id="link-9" class="py-name"><a title="Bio.SeqRecord Bio.SeqRecord.SeqRecord Bio.builders.SeqRecord Bio.writers.SeqRecord" class="py-name" href="#" onclick="return doclink('link-9', 'SeqRecord', 'link-8');">SeqRecord</a></tt> </tt> <a name="L123"></a><tt class="py-lineno"> 123</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-10" class="py-name"><a title="Bio" class="py-name" href="#" onclick="return doclink('link-10', 'Bio', 'link-0');">Bio</a></tt><tt class="py-op">.</tt><tt id="link-11" class="py-name" targets="Package Bio.Align=Bio.Align-module.html"><a title="Bio.Align" class="py-name" href="#" onclick="return doclink('link-11', 'Align', 'link-11');">Align</a></tt><tt class="py-op">.</tt><tt id="link-12" class="py-name" targets="Module Bio.Align.Generic=Bio.Align.Generic-module.html"><a title="Bio.Align.Generic" class="py-name" href="#" onclick="return doclink('link-12', 'Generic', 'link-12');">Generic</a></tt> <tt class="py-keyword">import</tt> <tt id="link-13" class="py-name" targets="Class Bio.Align.Generic.Alignment=Bio.Align.Generic.Alignment-class.html,Class Bio.Blast.Record.Alignment=Bio.Blast.Record.Alignment-class.html,Class Bio.Wise.psw.Alignment=Bio.Wise.psw.Alignment-class.html"><a title="Bio.Align.Generic.Alignment Bio.Blast.Record.Alignment Bio.Wise.psw.Alignment" class="py-name" href="#" onclick="return doclink('link-13', 'Alignment', 'link-13');">Alignment</a></tt> </tt> <a name="L124"></a><tt class="py-lineno"> 124</tt> <tt class="py-line"> </tt> <a name="L125"></a><tt class="py-lineno"> 125</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt id="link-14" class="py-name" targets="Module Bio.AlignIO.StockholmIO=Bio.AlignIO.StockholmIO-module.html,Module Bio.SeqIO.StockholmIO=Bio.SeqIO.StockholmIO-module.html"><a title="Bio.AlignIO.StockholmIO Bio.SeqIO.StockholmIO" class="py-name" href="#" onclick="return doclink('link-14', 'StockholmIO', 'link-14');">StockholmIO</a></tt> </tt> <a name="L126"></a><tt class="py-lineno"> 126</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt id="link-15" class="py-name" targets="Module Bio.AlignIO.ClustalIO=Bio.AlignIO.ClustalIO-module.html,Module Bio.SeqIO.ClustalIO=Bio.SeqIO.ClustalIO-module.html"><a title="Bio.AlignIO.ClustalIO Bio.SeqIO.ClustalIO" class="py-name" href="#" onclick="return doclink('link-15', 'ClustalIO', 'link-15');">ClustalIO</a></tt> </tt> <a name="L127"></a><tt class="py-lineno"> 127</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt id="link-16" class="py-name" targets="Module Bio.AlignIO.NexusIO=Bio.AlignIO.NexusIO-module.html,Module Bio.SeqIO.NexusIO=Bio.SeqIO.NexusIO-module.html"><a title="Bio.AlignIO.NexusIO Bio.SeqIO.NexusIO" class="py-name" href="#" onclick="return doclink('link-16', 'NexusIO', 'link-16');">NexusIO</a></tt> </tt> <a name="L128"></a><tt class="py-lineno"> 128</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt id="link-17" class="py-name" targets="Module Bio.AlignIO.PhylipIO=Bio.AlignIO.PhylipIO-module.html,Module Bio.SeqIO.PhylipIO=Bio.SeqIO.PhylipIO-module.html"><a title="Bio.AlignIO.PhylipIO Bio.SeqIO.PhylipIO" class="py-name" href="#" onclick="return doclink('link-17', 'PhylipIO', 'link-17');">PhylipIO</a></tt> </tt> <a name="L129"></a><tt class="py-lineno"> 129</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt id="link-18" class="py-name" targets="Module Bio.AlignIO.EmbossIO=Bio.AlignIO.EmbossIO-module.html"><a title="Bio.AlignIO.EmbossIO" class="py-name" href="#" onclick="return doclink('link-18', 'EmbossIO', 'link-18');">EmbossIO</a></tt> </tt> <a name="L130"></a><tt class="py-lineno"> 130</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt id="link-19" class="py-name" targets="Module Bio.AlignIO.FastaIO=Bio.AlignIO.FastaIO-module.html,Module Bio.SeqIO.FastaIO=Bio.SeqIO.FastaIO-module.html"><a title="Bio.AlignIO.FastaIO Bio.SeqIO.FastaIO" class="py-name" href="#" onclick="return doclink('link-19', 'FastaIO', 'link-19');">FastaIO</a></tt> </tt> <a name="L131"></a><tt class="py-lineno"> 131</tt> <tt class="py-line"> </tt> <a name="L132"></a><tt class="py-lineno"> 132</tt> <tt class="py-line"><tt class="py-comment">#Convention for format names is "mainname-subtype" in lower case.</tt> </tt> <a name="L133"></a><tt class="py-lineno"> 133</tt> <tt class="py-line"><tt class="py-comment"></tt><tt class="py-comment">#Please use the same names as BioPerl and EMBOSS where possible.</tt> </tt> <a name="L134"></a><tt class="py-lineno"> 134</tt> <tt class="py-line"><tt class="py-comment"></tt> </tt> <a name="L135"></a><tt class="py-lineno"> 135</tt> <tt class="py-line"><tt id="link-20" class="py-name" targets="Variable Bio.AlignIO._FormatToIterator=Bio.AlignIO-module.html#_FormatToIterator,Variable Bio.SeqIO._FormatToIterator=Bio.SeqIO-module.html#_FormatToIterator"><a title="Bio.AlignIO._FormatToIterator Bio.SeqIO._FormatToIterator" class="py-name" href="#" onclick="return doclink('link-20', '_FormatToIterator', 'link-20');">_FormatToIterator</a></tt> <tt class="py-op">=</tt><tt class="py-op">{</tt><tt class="py-comment">#"fasta" is done via Bio.SeqIO</tt> </tt> <a name="L136"></a><tt class="py-lineno"> 136</tt> <tt class="py-line"> <tt class="py-string">"clustal"</tt> <tt class="py-op">:</tt> <tt id="link-21" class="py-name"><a title="Bio.AlignIO.ClustalIO Bio.SeqIO.ClustalIO" class="py-name" href="#" onclick="return doclink('link-21', 'ClustalIO', 'link-15');">ClustalIO</a></tt><tt class="py-op">.</tt><tt id="link-22" class="py-name" targets="Class Bio.AlignIO.ClustalIO.ClustalIterator=Bio.AlignIO.ClustalIO.ClustalIterator-class.html,Function Bio.SeqIO.ClustalIO.ClustalIterator()=Bio.SeqIO.ClustalIO-module.html#ClustalIterator"><a title="Bio.AlignIO.ClustalIO.ClustalIterator Bio.SeqIO.ClustalIO.ClustalIterator" class="py-name" href="#" onclick="return doclink('link-22', 'ClustalIterator', 'link-22');">ClustalIterator</a></tt><tt class="py-op">,</tt> </tt> <a name="L137"></a><tt class="py-lineno"> 137</tt> <tt class="py-line"> <tt class="py-string">"emboss"</tt> <tt class="py-op">:</tt> <tt id="link-23" class="py-name"><a title="Bio.AlignIO.EmbossIO" class="py-name" href="#" onclick="return doclink('link-23', 'EmbossIO', 'link-18');">EmbossIO</a></tt><tt class="py-op">.</tt><tt id="link-24" class="py-name" targets="Class Bio.AlignIO.EmbossIO.EmbossIterator=Bio.AlignIO.EmbossIO.EmbossIterator-class.html"><a title="Bio.AlignIO.EmbossIO.EmbossIterator" class="py-name" href="#" onclick="return doclink('link-24', 'EmbossIterator', 'link-24');">EmbossIterator</a></tt><tt class="py-op">,</tt> </tt> <a name="L138"></a><tt class="py-lineno"> 138</tt> <tt class="py-line"> <tt class="py-string">"fasta-m10"</tt> <tt class="py-op">:</tt> <tt id="link-25" class="py-name"><a title="Bio.AlignIO.FastaIO Bio.SeqIO.FastaIO" class="py-name" href="#" onclick="return doclink('link-25', 'FastaIO', 'link-19');">FastaIO</a></tt><tt class="py-op">.</tt><tt id="link-26" class="py-name" targets="Class Bio.AlignIO.FastaIO.FastaM10Iterator=Bio.AlignIO.FastaIO.FastaM10Iterator-class.html"><a title="Bio.AlignIO.FastaIO.FastaM10Iterator" class="py-name" href="#" onclick="return doclink('link-26', 'FastaM10Iterator', 'link-26');">FastaM10Iterator</a></tt><tt class="py-op">,</tt> </tt> <a name="L139"></a><tt class="py-lineno"> 139</tt> <tt class="py-line"> <tt class="py-string">"nexus"</tt> <tt class="py-op">:</tt> <tt id="link-27" class="py-name"><a title="Bio.AlignIO.NexusIO Bio.SeqIO.NexusIO" class="py-name" href="#" onclick="return doclink('link-27', 'NexusIO', 'link-16');">NexusIO</a></tt><tt class="py-op">.</tt><tt id="link-28" class="py-name" targets="Function Bio.AlignIO.NexusIO.NexusIterator()=Bio.AlignIO.NexusIO-module.html#NexusIterator,Function Bio.SeqIO.NexusIO.NexusIterator()=Bio.SeqIO.NexusIO-module.html#NexusIterator"><a title="Bio.AlignIO.NexusIO.NexusIterator Bio.SeqIO.NexusIO.NexusIterator" class="py-name" href="#" onclick="return doclink('link-28', 'NexusIterator', 'link-28');">NexusIterator</a></tt><tt class="py-op">,</tt> </tt> <a name="L140"></a><tt class="py-lineno"> 140</tt> <tt class="py-line"> <tt class="py-string">"phylip"</tt> <tt class="py-op">:</tt> <tt id="link-29" class="py-name"><a title="Bio.AlignIO.PhylipIO Bio.SeqIO.PhylipIO" class="py-name" href="#" onclick="return doclink('link-29', 'PhylipIO', 'link-17');">PhylipIO</a></tt><tt class="py-op">.</tt><tt id="link-30" class="py-name" targets="Class Bio.AlignIO.PhylipIO.PhylipIterator=Bio.AlignIO.PhylipIO.PhylipIterator-class.html,Function Bio.SeqIO.PhylipIO.PhylipIterator()=Bio.SeqIO.PhylipIO-module.html#PhylipIterator"><a title="Bio.AlignIO.PhylipIO.PhylipIterator Bio.SeqIO.PhylipIO.PhylipIterator" class="py-name" href="#" onclick="return doclink('link-30', 'PhylipIterator', 'link-30');">PhylipIterator</a></tt><tt class="py-op">,</tt> </tt> <a name="L141"></a><tt class="py-lineno"> 141</tt> <tt class="py-line"> <tt class="py-string">"stockholm"</tt> <tt class="py-op">:</tt> <tt id="link-31" class="py-name"><a title="Bio.AlignIO.StockholmIO Bio.SeqIO.StockholmIO" class="py-name" href="#" onclick="return doclink('link-31', 'StockholmIO', 'link-14');">StockholmIO</a></tt><tt class="py-op">.</tt><tt id="link-32" class="py-name" targets="Class Bio.AlignIO.StockholmIO.StockholmIterator=Bio.AlignIO.StockholmIO.StockholmIterator-class.html,Class Bio.SeqIO.StockholmIO.StockholmIterator=Bio.SeqIO.StockholmIO.StockholmIterator-class.html"><a title="Bio.AlignIO.StockholmIO.StockholmIterator Bio.SeqIO.StockholmIO.StockholmIterator" class="py-name" href="#" onclick="return doclink('link-32', 'StockholmIterator', 'link-32');">StockholmIterator</a></tt><tt class="py-op">,</tt> </tt> <a name="L142"></a><tt class="py-lineno"> 142</tt> <tt class="py-line"> <tt class="py-op">}</tt> </tt> <a name="L143"></a><tt class="py-lineno"> 143</tt> <tt class="py-line"> </tt> <a name="L144"></a><tt class="py-lineno"> 144</tt> <tt class="py-line"><tt id="link-33" class="py-name" targets="Variable Bio.AlignIO._FormatToWriter=Bio.AlignIO-module.html#_FormatToWriter,Variable Bio.SeqIO._FormatToWriter=Bio.SeqIO-module.html#_FormatToWriter"><a title="Bio.AlignIO._FormatToWriter Bio.SeqIO._FormatToWriter" class="py-name" href="#" onclick="return doclink('link-33', '_FormatToWriter', 'link-33');">_FormatToWriter</a></tt> <tt class="py-op">=</tt><tt class="py-op">{</tt><tt class="py-comment">#"fasta" is done via Bio.SeqIO</tt> </tt> <a name="L145"></a><tt class="py-lineno"> 145</tt> <tt class="py-line"> <tt class="py-comment">#"emboss" : EmbossIO.EmbossWriter, (unfinished)</tt> </tt> <a name="L146"></a><tt class="py-lineno"> 146</tt> <tt class="py-line"> <tt class="py-string">"phylip"</tt> <tt class="py-op">:</tt> <tt id="link-34" class="py-name"><a title="Bio.AlignIO.PhylipIO Bio.SeqIO.PhylipIO" class="py-name" href="#" onclick="return doclink('link-34', 'PhylipIO', 'link-17');">PhylipIO</a></tt><tt class="py-op">.</tt><tt id="link-35" class="py-name" targets="Class Bio.AlignIO.PhylipIO.PhylipWriter=Bio.AlignIO.PhylipIO.PhylipWriter-class.html,Class Bio.SeqIO.PhylipIO.PhylipWriter=Bio.SeqIO.PhylipIO.PhylipWriter-class.html"><a title="Bio.AlignIO.PhylipIO.PhylipWriter Bio.SeqIO.PhylipIO.PhylipWriter" class="py-name" href="#" onclick="return doclink('link-35', 'PhylipWriter', 'link-35');">PhylipWriter</a></tt><tt class="py-op">,</tt> </tt> <a name="L147"></a><tt class="py-lineno"> 147</tt> <tt class="py-line"> <tt class="py-string">"stockholm"</tt> <tt class="py-op">:</tt> <tt id="link-36" class="py-name"><a title="Bio.AlignIO.StockholmIO Bio.SeqIO.StockholmIO" class="py-name" href="#" onclick="return doclink('link-36', 'StockholmIO', 'link-14');">StockholmIO</a></tt><tt class="py-op">.</tt><tt id="link-37" class="py-name" targets="Class Bio.AlignIO.StockholmIO.StockholmWriter=Bio.AlignIO.StockholmIO.StockholmWriter-class.html,Class Bio.SeqIO.StockholmIO.StockholmWriter=Bio.SeqIO.StockholmIO.StockholmWriter-class.html"><a title="Bio.AlignIO.StockholmIO.StockholmWriter Bio.SeqIO.StockholmIO.StockholmWriter" class="py-name" href="#" onclick="return doclink('link-37', 'StockholmWriter', 'link-37');">StockholmWriter</a></tt><tt class="py-op">,</tt> </tt> <a name="L148"></a><tt class="py-lineno"> 148</tt> <tt class="py-line"> <tt class="py-string">"clustal"</tt> <tt class="py-op">:</tt> <tt id="link-38" class="py-name"><a title="Bio.AlignIO.ClustalIO Bio.SeqIO.ClustalIO" class="py-name" href="#" onclick="return doclink('link-38', 'ClustalIO', 'link-15');">ClustalIO</a></tt><tt class="py-op">.</tt><tt id="link-39" class="py-name" targets="Class Bio.AlignIO.ClustalIO.ClustalWriter=Bio.AlignIO.ClustalIO.ClustalWriter-class.html,Class Bio.SeqIO.ClustalIO.ClustalWriter=Bio.SeqIO.ClustalIO.ClustalWriter-class.html"><a title="Bio.AlignIO.ClustalIO.ClustalWriter Bio.SeqIO.ClustalIO.ClustalWriter" class="py-name" href="#" onclick="return doclink('link-39', 'ClustalWriter', 'link-39');">ClustalWriter</a></tt><tt class="py-op">,</tt> </tt> <a name="L149"></a><tt class="py-lineno"> 149</tt> <tt class="py-line"> <tt class="py-op">}</tt> </tt> <a name="L150"></a><tt class="py-lineno"> 150</tt> <tt class="py-line"> </tt> <a name="write"></a><div id="write-def"><a name="L151"></a><tt class="py-lineno"> 151</tt> <a class="py-toggle" href="#" id="write-toggle" onclick="return toggle('write');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="Bio.AlignIO-module.html#write">write</a><tt class="py-op">(</tt><tt class="py-param">alignments</tt><tt class="py-op">,</tt> <tt class="py-param">handle</tt><tt class="py-op">,</tt> <tt class="py-param">format</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt> </div><div id="write-collapsed" style="display:none;" pad="++++" indent="++++"></div><div id="write-expanded"><a name="L152"></a><tt class="py-lineno"> 152</tt> <tt class="py-line"> <tt class="py-docstring">"""Write complete set of alignments to a file.</tt> </tt> <a name="L153"></a><tt class="py-lineno"> 153</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L154"></a><tt class="py-lineno"> 154</tt> <tt class="py-line"><tt class="py-docstring"> sequences - A list (or iterator) of Alignment objects</tt> </tt> <a name="L155"></a><tt class="py-lineno"> 155</tt> <tt class="py-line"><tt class="py-docstring"> handle - File handle object to write to</tt> </tt> <a name="L156"></a><tt class="py-lineno"> 156</tt> <tt class="py-line"><tt class="py-docstring"> format - What format to use.</tt> </tt> <a name="L157"></a><tt class="py-lineno"> 157</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L158"></a><tt class="py-lineno"> 158</tt> <tt class="py-line"><tt class="py-docstring"> You should close the handle after calling this function.</tt> </tt> <a name="L159"></a><tt class="py-lineno"> 159</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L160"></a><tt class="py-lineno"> 160</tt> <tt class="py-line"><tt class="py-docstring"> There is no return value.</tt> </tt> <a name="L161"></a><tt class="py-lineno"> 161</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt> <a name="L162"></a><tt class="py-lineno"> 162</tt> <tt class="py-line"> <tt class="py-keyword">from</tt> <tt id="link-40" class="py-name"><a title="Bio" class="py-name" href="#" onclick="return doclink('link-40', 'Bio', 'link-0');">Bio</a></tt> <tt class="py-keyword">import</tt> <tt id="link-41" class="py-name" targets="Package Bio.SeqIO=Bio.SeqIO-module.html"><a title="Bio.SeqIO" class="py-name" href="#" onclick="return doclink('link-41', 'SeqIO', 'link-41');">SeqIO</a></tt> </tt> <a name="L163"></a><tt class="py-lineno"> 163</tt> <tt class="py-line"> </tt> <a name="L164"></a><tt class="py-lineno"> 164</tt> <tt class="py-line"> <tt class="py-comment">#Try and give helpful error messages:</tt> </tt> <a name="L165"></a><tt class="py-lineno"> 165</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt id="link-42" class="py-name" targets="Variable Bio.LocusLink.web_parse.handle=Bio.LocusLink.web_parse-module.html#handle,Variable Bio.Ndb.handle=Bio.Ndb-module.html#handle"><a title="Bio.LocusLink.web_parse.handle Bio.Ndb.handle" class="py-name" href="#" onclick="return doclink('link-42', 'handle', 'link-42');">handle</a></tt><tt class="py-op">,</tt> <tt class="py-name">basestring</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt> <a name="L166"></a><tt class="py-lineno"> 166</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">TypeError</tt><tt class="py-op">(</tt><tt class="py-string">"Need a file handle, not a string (i.e. not a filename)"</tt><tt class="py-op">)</tt> </tt> <a name="L167"></a><tt class="py-lineno"> 167</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt id="link-43" class="py-name" targets="Method Bio.Restriction.Restriction.RestrictionBatch.format()=Bio.Restriction.Restriction.RestrictionBatch-class.html#format,Variable Bio.expressions.blast.ncbiblast.format=Bio.expressions.blast.ncbiblast-module.html#format,Variable Bio.expressions.blast.wublast.format=Bio.expressions.blast.wublast-module.html#format,Variable Bio.expressions.blocks.format=Bio.expressions.blocks-module.html#format,Variable Bio.expressions.embl.embl65.format=Bio.expressions.embl.embl65-module.html#format,Variable Bio.expressions.fasta.format=Bio.expressions.fasta-module.html#format,Variable Bio.expressions.genbank.format=Bio.expressions.genbank-module.html#format,Variable Bio.expressions.hmmpfam.format=Bio.expressions.hmmpfam-module.html#format,Variable Bio.expressions.swissprot.ipi.format=Bio.expressions.swissprot.ipi-module.html#format,Variable Bio.expressions.swissprot.speclist.format=Bio.expressions.swissprot.speclist-module.html#format,Variable Bio.expressions.swissprot.sprot38.format=Bio.expressions.swissprot.sprot38-module.html#format,Variable Bio.expressions.swissprot.sprot40.format=Bio.expressions.swissprot.sprot40-module.html#format,Variable Bio.expressions.transfac.format=Bio.expressions.transfac-module.html#format,Variable Martel.test.test_swissprot38.format=Martel.test.test_swissprot38-module.html#format,Variable Martel.test.testformats.swissprot38.format=Martel.test.testformats.swissprot38-module.html#format"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-43', 'format', 'link-43');">format</a></tt><tt class="py-op">,</tt> <tt class="py-name">basestring</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt> <a name="L168"></a><tt class="py-lineno"> 168</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">TypeError</tt><tt class="py-op">(</tt><tt class="py-string">"Need a string for the file format (lower case)"</tt><tt class="py-op">)</tt> </tt> <a name="L169"></a><tt class="py-lineno"> 169</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt id="link-44" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-44', 'format', 'link-43');">format</a></tt> <tt class="py-op">:</tt> </tt> <a name="L170"></a><tt class="py-lineno"> 170</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">ValueError</tt><tt class="py-op">(</tt><tt class="py-string">"Format required (lower case string)"</tt><tt class="py-op">)</tt> </tt> <a name="L171"></a><tt class="py-lineno"> 171</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-45" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-45', 'format', 'link-43');">format</a></tt> <tt class="py-op"><></tt> <tt id="link-46" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-46', 'format', 'link-43');">format</a></tt><tt class="py-op">.</tt><tt class="py-name">lower</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt> <a name="L172"></a><tt class="py-lineno"> 172</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">ValueError</tt><tt class="py-op">(</tt><tt class="py-string">"Format string '%s' should be lower case"</tt> <tt class="py-op">%</tt> <tt id="link-47" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-47', 'format', 'link-43');">format</a></tt><tt class="py-op">)</tt> </tt> <a name="L173"></a><tt class="py-lineno"> 173</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">alignments</tt><tt class="py-op">,</tt> <tt id="link-48" class="py-name"><a title="Bio.Align.Generic.Alignment Bio.Blast.Record.Alignment Bio.Wise.psw.Alignment" class="py-name" href="#" onclick="return doclink('link-48', 'Alignment', 'link-13');">Alignment</a></tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt> <a name="L174"></a><tt class="py-lineno"> 174</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">TypeError</tt><tt class="py-op">(</tt><tt class="py-string">"Need a list of alignments, not simply an Alignment"</tt><tt class="py-op">)</tt> </tt> <a name="L175"></a><tt class="py-lineno"> 175</tt> <tt class="py-line"> </tt> <a name="L176"></a><tt class="py-lineno"> 176</tt> <tt class="py-line"> <tt class="py-comment">#Map the file format to a writer class</tt> </tt> <a name="L177"></a><tt class="py-lineno"> 177</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-keyword">if</tt> <tt id="link-49" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-49', 'format', 'link-43');">format</a></tt> <tt class="py-keyword">in</tt> <tt id="link-50" class="py-name"><a title="Bio.AlignIO._FormatToIterator Bio.SeqIO._FormatToIterator" class="py-name" href="#" onclick="return doclink('link-50', '_FormatToIterator', 'link-20');">_FormatToIterator</a></tt> <tt class="py-op">:</tt> </tt> <a name="L178"></a><tt class="py-lineno"> 178</tt> <tt class="py-line"> <tt class="py-name">writer_class</tt> <tt class="py-op">=</tt> <tt id="link-51" class="py-name"><a title="Bio.AlignIO._FormatToWriter Bio.SeqIO._FormatToWriter" class="py-name" href="#" onclick="return doclink('link-51', '_FormatToWriter', 'link-33');">_FormatToWriter</a></tt><tt class="py-op">[</tt><tt id="link-52" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-52', 'format', 'link-43');">format</a></tt><tt class="py-op">]</tt> </tt> <a name="L179"></a><tt class="py-lineno"> 179</tt> <tt class="py-line"> <tt class="py-name">writer_class</tt><tt class="py-op">(</tt><tt id="link-53" class="py-name"><a title="Bio.LocusLink.web_parse.handle Bio.Ndb.handle" class="py-name" href="#" onclick="return doclink('link-53', 'handle', 'link-42');">handle</a></tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-54" class="py-name" targets="Method Bio.AlignIO.Interfaces.AlignmentWriter.write_file()=Bio.AlignIO.Interfaces.AlignmentWriter-class.html#write_file,Method Bio.AlignIO.Interfaces.SequentialAlignmentWriter.write_file()=Bio.AlignIO.Interfaces.SequentialAlignmentWriter-class.html#write_file,Method Bio.SeqIO.ClustalIO.ClustalWriter.write_file()=Bio.SeqIO.ClustalIO.ClustalWriter-class.html#write_file,Method Bio.SeqIO.Interfaces.SequenceWriter.write_file()=Bio.SeqIO.Interfaces.SequenceWriter-class.html#write_file,Method Bio.SeqIO.Interfaces.SequentialSequenceWriter.write_file()=Bio.SeqIO.Interfaces.SequentialSequenceWriter-class.html#write_file,Method Bio.SeqIO.PhylipIO.PhylipWriter.write_file()=Bio.SeqIO.PhylipIO.PhylipWriter-class.html#write_file,Method Bio.SeqIO.StockholmIO.StockholmWriter.write_file()=Bio.SeqIO.StockholmIO.StockholmWriter-class.html#write_file"><a title="Bio.AlignIO.Interfaces.AlignmentWriter.write_file Bio.AlignIO.Interfaces.SequentialAlignmentWriter.write_file Bio.SeqIO.ClustalIO.ClustalWriter.write_file Bio.SeqIO.Interfaces.SequenceWriter.write_file Bio.SeqIO.Interfaces.SequentialSequenceWriter.write_file Bio.SeqIO.PhylipIO.PhylipWriter.write_file Bio.SeqIO.StockholmIO.StockholmWriter.write_file" class="py-name" href="#" onclick="return doclink('link-54', 'write_file', 'link-54');">write_file</a></tt><tt class="py-op">(</tt><tt class="py-name">alignments</tt><tt class="py-op">)</tt> </tt> <a name="L180"></a><tt class="py-lineno"> 180</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt id="link-55" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-55', 'format', 'link-43');">format</a></tt> <tt class="py-keyword">in</tt> <tt id="link-56" class="py-name"><a title="Bio.SeqIO" class="py-name" href="#" onclick="return doclink('link-56', 'SeqIO', 'link-41');">SeqIO</a></tt><tt class="py-op">.</tt><tt id="link-57" class="py-name"><a title="Bio.AlignIO._FormatToIterator Bio.SeqIO._FormatToIterator" class="py-name" href="#" onclick="return doclink('link-57', '_FormatToIterator', 'link-20');">_FormatToIterator</a></tt> <tt class="py-op">:</tt> </tt> <a name="L181"></a><tt class="py-lineno"> 181</tt> <tt class="py-line"> <tt class="py-comment">#Exploit the existing SeqIO parser to the dirty work!</tt> </tt> <a name="L182"></a><tt class="py-lineno"> 182</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-comment">#This may not work perfectly...</tt> </tt> <a name="L183"></a><tt class="py-lineno"> 183</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-keyword">for</tt> <tt id="link-58" class="py-name" targets="Variable Bio.expressions.blast.ncbiblast.alignment=Bio.expressions.blast.ncbiblast-module.html#alignment"><a title="Bio.expressions.blast.ncbiblast.alignment" class="py-name" href="#" onclick="return doclink('link-58', 'alignment', 'link-58');">alignment</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">alignments</tt> <tt class="py-op">:</tt> </tt> <a name="L184"></a><tt class="py-lineno"> 184</tt> <tt class="py-line"> <tt id="link-59" class="py-name"><a title="Bio.SeqIO" class="py-name" href="#" onclick="return doclink('link-59', 'SeqIO', 'link-41');">SeqIO</a></tt><tt class="py-op">.</tt><tt id="link-60" class="py-name" targets="Method Bio.AlignAce.Motif.Motif.write()=Bio.AlignAce.Motif.Motif-class.html#write,Function Bio.AlignIO.write()=Bio.AlignIO-module.html#write,Method Bio.EUtils.sourcegen.SourceFile.write()=Bio.EUtils.sourcegen.SourceFile-class.html#write,Method Bio.EUtils.sourcegen.SourceGen.write()=Bio.EUtils.sourcegen.SourceGen-class.html#write,Method Bio.NeuralNetwork.Gene.Pattern.PatternIO.write()=Bio.NeuralNetwork.Gene.Pattern.PatternIO-class.html#write,Function Bio.SeqIO.write()=Bio.SeqIO-module.html#write,Method Bio.Writer.Writer.write()=Bio.Writer.Writer-class.html#write,Method Bio.writers.SeqRecord.embl.WriteEmbl.write()=Bio.writers.SeqRecord.embl.WriteEmbl-class.html#write,Method Bio.writers.SeqRecord.fasta.WriteFasta.write()=Bio.writers.SeqRecord.fasta.WriteFasta-class.html#write"><a title="Bio.AlignAce.Motif.Motif.write Bio.AlignIO.write Bio.EUtils.sourcegen.SourceFile.write Bio.EUtils.sourcegen.SourceGen.write Bio.NeuralNetwork.Gene.Pattern.PatternIO.write Bio.SeqIO.write Bio.Writer.Writer.write Bio.writers.SeqRecord.embl.WriteEmbl.write Bio.writers.SeqRecord.fasta.WriteFasta.write" class="py-name" href="#" onclick="return doclink('link-60', 'write', 'link-60');">write</a></tt><tt class="py-op">(</tt><tt id="link-61" class="py-name"><a title="Bio.expressions.blast.ncbiblast.alignment" class="py-name" href="#" onclick="return doclink('link-61', 'alignment', 'link-58');">alignment</a></tt><tt class="py-op">.</tt><tt id="link-62" class="py-name" targets="Method Bio.Align.Generic.Alignment.get_all_seqs()=Bio.Align.Generic.Alignment-class.html#get_all_seqs"><a title="Bio.Align.Generic.Alignment.get_all_seqs" class="py-name" href="#" onclick="return doclink('link-62', 'get_all_seqs', 'link-62');">get_all_seqs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt id="link-63" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-63', 'format', 'link-43');">format</a></tt><tt class="py-op">)</tt> </tt> <a name="L185"></a><tt class="py-lineno"> 185</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt> <a name="L186"></a><tt class="py-lineno"> 186</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">ValueError</tt><tt class="py-op">(</tt><tt class="py-string">"Unknown format '%s'"</tt> <tt class="py-op">%</tt> <tt id="link-64" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-64', 'format', 'link-43');">format</a></tt><tt class="py-op">)</tt> </tt> <a name="L187"></a><tt class="py-lineno"> 187</tt> <tt class="py-line"> </tt> <a name="L188"></a><tt class="py-lineno"> 188</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt> </div><a name="L189"></a><tt class="py-lineno"> 189</tt> <tt class="py-line"> </tt> <a name="L190"></a><tt class="py-lineno"> 190</tt> <tt class="py-line"><tt class="py-comment">#This is a generator function!</tt> </tt> <a name="_SeqIO_to_alignment_iterator"></a><div id="_SeqIO_to_alignment_iterator-def"><a name="L191"></a><tt class="py-lineno"> 191</tt> <a class="py-toggle" href="#" id="_SeqIO_to_alignment_iterator-toggle" onclick="return toggle('_SeqIO_to_alignment_iterator');">-</a><tt class="py-line"><tt class="py-comment"></tt><tt class="py-keyword">def</tt> <a class="py-def-name" href="Bio.AlignIO-module.html#_SeqIO_to_alignment_iterator">_SeqIO_to_alignment_iterator</a><tt class="py-op">(</tt><tt class="py-param">handle</tt><tt class="py-op">,</tt> <tt class="py-param">format</tt><tt class="py-op">,</tt> <tt class="py-param">seq_count</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt> </div><div id="_SeqIO_to_alignment_iterator-collapsed" style="display:none;" pad="++++" indent="++++"></div><div id="_SeqIO_to_alignment_iterator-expanded"><a name="L192"></a><tt class="py-lineno"> 192</tt> <tt class="py-line"> <tt class="py-docstring">"""Private function, uses Bio.SeqIO to create an Alignment iterator.</tt> </tt> <a name="L193"></a><tt class="py-lineno"> 193</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L194"></a><tt class="py-lineno"> 194</tt> <tt class="py-line"><tt class="py-docstring"> handle - handle to the file.</tt> </tt> <a name="L195"></a><tt class="py-lineno"> 195</tt> <tt class="py-line"><tt class="py-docstring"> format - string describing the file format.</tt> </tt> <a name="L196"></a><tt class="py-lineno"> 196</tt> <tt class="py-line"><tt class="py-docstring"> seq_count- Optional integer, number of sequences expected in</tt> </tt> <a name="L197"></a><tt class="py-lineno"> 197</tt> <tt class="py-line"><tt class="py-docstring"> each alignment. Recommended for fasta format files.</tt> </tt> <a name="L198"></a><tt class="py-lineno"> 198</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L199"></a><tt class="py-lineno"> 199</tt> <tt class="py-line"><tt class="py-docstring"> If count is omitted (default) then all the sequences in</tt> </tt> <a name="L200"></a><tt class="py-lineno"> 200</tt> <tt class="py-line"><tt class="py-docstring"> the file are combined into a single Alignment.</tt> </tt> <a name="L201"></a><tt class="py-lineno"> 201</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt> <a name="L202"></a><tt class="py-lineno"> 202</tt> <tt class="py-line"> <tt class="py-keyword">from</tt> <tt id="link-65" class="py-name"><a title="Bio" class="py-name" href="#" onclick="return doclink('link-65', 'Bio', 'link-0');">Bio</a></tt> <tt class="py-keyword">import</tt> <tt id="link-66" class="py-name"><a title="Bio.SeqIO" class="py-name" href="#" onclick="return doclink('link-66', 'SeqIO', 'link-41');">SeqIO</a></tt> </tt> <a name="L203"></a><tt class="py-lineno"> 203</tt> <tt class="py-line"> </tt> <a name="L204"></a><tt class="py-lineno"> 204</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt id="link-67" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-67', 'format', 'link-43');">format</a></tt> <tt class="py-keyword">in</tt> <tt id="link-68" class="py-name"><a title="Bio.SeqIO" class="py-name" href="#" onclick="return doclink('link-68', 'SeqIO', 'link-41');">SeqIO</a></tt><tt class="py-op">.</tt><tt id="link-69" class="py-name"><a title="Bio.AlignIO._FormatToIterator Bio.SeqIO._FormatToIterator" class="py-name" href="#" onclick="return doclink('link-69', '_FormatToIterator', 'link-20');">_FormatToIterator</a></tt> </tt> <a name="L205"></a><tt class="py-lineno"> 205</tt> <tt class="py-line"> </tt> <a name="L206"></a><tt class="py-lineno"> 206</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">seq_count</tt> <tt class="py-op">:</tt> </tt> <a name="L207"></a><tt class="py-lineno"> 207</tt> <tt class="py-line"> <tt class="py-comment">#Use the count to split the records into batches.</tt> </tt> <a name="L208"></a><tt class="py-lineno"> 208</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-name">seq_record_iterator</tt> <tt class="py-op">=</tt> <tt id="link-70" class="py-name"><a title="Bio.SeqIO" class="py-name" href="#" onclick="return doclink('link-70', 'SeqIO', 'link-41');">SeqIO</a></tt><tt class="py-op">.</tt><tt id="link-71" class="py-name" targets="Method Bio.Affy.CelFile.CelParser.parse()=Bio.Affy.CelFile.CelParser-class.html#parse,Method Bio.AlignAce.Parser.AlignAceParser.parse()=Bio.AlignAce.Parser.AlignAceParser-class.html#parse,Method Bio.AlignAce.Parser.CompareAceParser.parse()=Bio.AlignAce.Parser.CompareAceParser-class.html#parse,Function Bio.AlignIO.parse()=Bio.AlignIO-module.html#parse,Method Bio.Blast.NCBIStandalone.BlastErrorParser.parse()=Bio.Blast.NCBIStandalone.BlastErrorParser-class.html#parse,Method Bio.Blast.NCBIStandalone.BlastParser.parse()=Bio.Blast.NCBIStandalone.BlastParser-class.html#parse,Method Bio.Blast.NCBIStandalone.PSIBlastParser.parse()=Bio.Blast.NCBIStandalone.PSIBlastParser-class.html#parse,Method Bio.Blast.NCBIWWW.BlastParser.parse()=Bio.Blast.NCBIWWW.BlastParser-class.html#parse,Method Bio.Blast.NCBIXML.BlastParser.parse()=Bio.Blast.NCBIXML.BlastParser-class.html#parse,Function Bio.Blast.NCBIXML.parse()=Bio.Blast.NCBIXML-module.html#parse,Method Bio.CDD.RecordParser.parse()=Bio.CDD.RecordParser-class.html#parse,Method Bio.Compass.RecordParser.parse()=Bio.Compass.RecordParser-class.html#parse,Function Bio.Decode.parse()=Bio.Decode-module.html#parse,Method Bio.ECell.RecordParser.parse()=Bio.ECell.RecordParser-class.html#parse,Method Bio.EUtils.POM.POMDocument.parse()=Bio.EUtils.POM.POMDocument-class.html#parse,Module Bio.EUtils.parse=Bio.EUtils.parse-module.html,Method Bio.Emboss.Primer.Primer3Parser.parse()=Bio.Emboss.Primer.Primer3Parser-class.html#parse,Method Bio.Emboss.Primer.PrimerSearchParser.parse()=Bio.Emboss.Primer.PrimerSearchParser-class.html#parse,Method Bio.Enzyme.RecordParser.parse()=Bio.Enzyme.RecordParser-class.html#parse,Method Bio.Fasta.RecordParser.parse()=Bio.Fasta.RecordParser-class.html#parse,Method Bio.Fasta.SequenceParser.parse()=Bio.Fasta.SequenceParser-class.html#parse,Method Bio.GenBank.FeatureParser.parse()=Bio.GenBank.FeatureParser-class.html#parse,Function Bio.GenBank.LocationParser.parse()=Bio.GenBank.LocationParser-module.html#parse,Method Bio.GenBank.RecordParser.parse()=Bio.GenBank.RecordParser-class.html#parse,Method Bio.GenBank.Scanner.InsdcScanner.parse()=Bio.GenBank.Scanner.InsdcScanner-class.html#parse,Function Bio.Geo.parse()=Bio.Geo-module.html#parse,Method Bio.Gobase.RecordParser.parse()=Bio.Gobase.RecordParser-class.html#parse,Method Bio.IntelliGenetics.RecordParser.parse()=Bio.IntelliGenetics.RecordParser-class.html#parse,Method Bio.InterPro.InterProParser.parse()=Bio.InterPro.InterProParser-class.html#parse,Function Bio.KEGG.Compound.parse()=Bio.KEGG.Compound-module.html#parse,Function Bio.KEGG.Enzyme.parse()=Bio.KEGG.Enzyme-module.html#parse,Function Bio.KEGG.Map.parse()=Bio.KEGG.Map-module.html#parse,Method Bio.LocusLink.RecordParser.parse()=Bio.LocusLink.RecordParser-class.html#parse,Method Bio.LocusLink.web_parse.LocusLinkParser.parse()=Bio.LocusLink.web_parse.LocusLinkParser-class.html#parse,Method Bio.MEME.Parser.MASTParser.parse()=Bio.MEME.Parser.MASTParser-class.html#parse,Method Bio.MEME.Parser.MEMEParser.parse()=Bio.MEME.Parser.MEMEParser-class.html#parse,Method Bio.Medline.RecordParser.parse()=Bio.Medline.RecordParser-class.html#parse,Method Bio.MetaTool.RecordParser.parse()=Bio.MetaTool.RecordParser-class.html#parse,Method Bio.NBRF.RecordParser.parse()=Bio.NBRF.RecordParser-class.html#parse,Method Bio.Ndb.NdbParser.parse()=Bio.Ndb.NdbParser-class.html#parse,Method Bio.ParserSupport.AbstractParser.parse()=Bio.ParserSupport.AbstractParser-class.html#parse,Method Bio.Parsers.spark.GenericParser.parse()=Bio.Parsers.spark.GenericParser-class.html#parse,Method Bio.PopGen.FDist.RecordParser.parse()=Bio.PopGen.FDist.RecordParser-class.html#parse,Method Bio.PopGen.GenePop.RecordParser.parse()=Bio.PopGen.GenePop.RecordParser-class.html#parse,Function Bio.PopGen.GenePop.parse()=Bio.PopGen.GenePop-module.html#parse,Method Bio.Prosite.Prodoc.RecordParser.parse()=Bio.Prosite.Prodoc.RecordParser-class.html#parse,Function Bio.Prosite.Prodoc.parse()=Bio.Prosite.Prodoc-module.html#parse,Method Bio.Prosite.RecordParser.parse()=Bio.Prosite.RecordParser-class.html#parse,Function Bio.Prosite.parse()=Bio.Prosite-module.html#parse,Method Bio.Rebase.RecordParser.parse()=Bio.Rebase.RecordParser-class.html#parse,Method Bio.SCOP.Cla.Parser.parse()=Bio.SCOP.Cla.Parser-class.html#parse,Function Bio.SCOP.Cla.parse()=Bio.SCOP.Cla-module.html#parse,Method Bio.SCOP.Des.Parser.parse()=Bio.SCOP.Des.Parser-class.html#parse,Function Bio.SCOP.Des.parse()=Bio.SCOP.Des-module.html#parse,Method Bio.SCOP.Dom.Parser.parse()=Bio.SCOP.Dom.Parser-class.html#parse,Function Bio.SCOP.Dom.parse()=Bio.SCOP.Dom-module.html#parse,Method Bio.SCOP.Hie.Parser.parse()=Bio.SCOP.Hie.Parser-class.html#parse,Function Bio.SCOP.Hie.parse()=Bio.SCOP.Hie-module.html#parse,Method Bio.SCOP.Raf.Parser.parse()=Bio.SCOP.Raf.Parser-class.html#parse,Function Bio.SCOP.Raf.parse()=Bio.SCOP.Raf-module.html#parse,Method Bio.Saf.RecordParser.parse()=Bio.Saf.RecordParser-class.html#parse,Function Bio.SeqIO.parse()=Bio.SeqIO-module.html#parse,Method Bio.Sequencing.Ace.ACEParser.parse()=Bio.Sequencing.Ace.ACEParser-class.html#parse,Method Bio.Sequencing.Ace.RecordParser.parse()=Bio.Sequencing.Ace.RecordParser-class.html#parse,Method Bio.Sequencing.Phd.RecordParser.parse()=Bio.Sequencing.Phd.RecordParser-class.html#parse,Method Bio.SwissProt.KeyWList.ListParser.parse()=Bio.SwissProt.KeyWList.ListParser-class.html#parse,Function Bio.SwissProt.KeyWList.parse()=Bio.SwissProt.KeyWList-module.html#parse,Method Bio.SwissProt.SProt.RecordParser.parse()=Bio.SwissProt.SProt.RecordParser-class.html#parse,Method Bio.SwissProt.SProt.SequenceParser.parse()=Bio.SwissProt.SProt.SequenceParser-class.html#parse,Function Bio.SwissProt.parse()=Bio.SwissProt-module.html#parse,Method Bio.UniGene.RecordParser.parse()=Bio.UniGene.RecordParser-class.html#parse,Function Bio.Wise.psw.parse()=Bio.Wise.psw-module.html#parse,Method Martel.Parser.HeaderFooterParser.parse()=Martel.Parser.HeaderFooterParser-class.html#parse,Method Martel.Parser.Parser.parse()=Martel.Parser.Parser-class.html#parse,Method Martel.Parser.RecordParser.parse()=Martel.Parser.RecordParser-class.html#parse,Function Martel.msre_parse.parse()=Martel.msre_parse-module.html#parse"><a title="Bio.Affy.CelFile.CelParser.parse Bio.AlignAce.Parser.AlignAceParser.parse Bio.AlignAce.Parser.CompareAceParser.parse Bio.AlignIO.parse Bio.Blast.NCBIStandalone.BlastErrorParser.parse Bio.Blast.NCBIStandalone.BlastParser.parse Bio.Blast.NCBIStandalone.PSIBlastParser.parse Bio.Blast.NCBIWWW.BlastParser.parse Bio.Blast.NCBIXML.BlastParser.parse Bio.Blast.NCBIXML.parse Bio.CDD.RecordParser.parse Bio.Compass.RecordParser.parse Bio.Decode.parse Bio.ECell.RecordParser.parse Bio.EUtils.POM.POMDocument.parse Bio.EUtils.parse Bio.Emboss.Primer.Primer3Parser.parse Bio.Emboss.Primer.PrimerSearchParser.parse Bio.Enzyme.RecordParser.parse Bio.Fasta.RecordParser.parse Bio.Fasta.SequenceParser.parse Bio.GenBank.FeatureParser.parse Bio.GenBank.LocationParser.parse Bio.GenBank.RecordParser.parse Bio.GenBank.Scanner.InsdcScanner.parse Bio.Geo.parse Bio.Gobase.RecordParser.parse Bio.IntelliGenetics.RecordParser.parse Bio.InterPro.InterProParser.parse Bio.KEGG.Compound.parse Bio.KEGG.Enzyme.parse Bio.KEGG.Map.parse Bio.LocusLink.RecordParser.parse Bio.LocusLink.web_parse.LocusLinkParser.parse Bio.MEME.Parser.MASTParser.parse Bio.MEME.Parser.MEMEParser.parse Bio.Medline.RecordParser.parse Bio.MetaTool.RecordParser.parse Bio.NBRF.RecordParser.parse Bio.Ndb.NdbParser.parse Bio.ParserSupport.AbstractParser.parse Bio.Parsers.spark.GenericParser.parse Bio.PopGen.FDist.RecordParser.parse Bio.PopGen.GenePop.RecordParser.parse Bio.PopGen.GenePop.parse Bio.Prosite.Prodoc.RecordParser.parse Bio.Prosite.Prodoc.parse Bio.Prosite.RecordParser.parse Bio.Prosite.parse Bio.Rebase.RecordParser.parse Bio.SCOP.Cla.Parser.parse Bio.SCOP.Cla.parse Bio.SCOP.Des.Parser.parse Bio.SCOP.Des.parse Bio.SCOP.Dom.Parser.parse Bio.SCOP.Dom.parse Bio.SCOP.Hie.Parser.parse Bio.SCOP.Hie.parse Bio.SCOP.Raf.Parser.parse Bio.SCOP.Raf.parse Bio.Saf.RecordParser.parse Bio.SeqIO.parse Bio.Sequencing.Ace.ACEParser.parse Bio.Sequencing.Ace.RecordParser.parse Bio.Sequencing.Phd.RecordParser.parse Bio.SwissProt.KeyWList.ListParser.parse Bio.SwissProt.KeyWList.parse Bio.SwissProt.SProt.RecordParser.parse Bio.SwissProt.SProt.SequenceParser.parse Bio.SwissProt.parse Bio.UniGene.RecordParser.parse Bio.Wise.psw.parse Martel.Parser.HeaderFooterParser.parse Martel.Parser.Parser.parse Martel.Parser.RecordParser.parse Martel.msre_parse.parse" class="py-name" href="#" onclick="return doclink('link-71', 'parse', 'link-71');">parse</a></tt><tt class="py-op">(</tt><tt id="link-72" class="py-name"><a title="Bio.LocusLink.web_parse.handle Bio.Ndb.handle" class="py-name" href="#" onclick="return doclink('link-72', 'handle', 'link-42');">handle</a></tt><tt class="py-op">,</tt> <tt id="link-73" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-73', 'format', 'link-43');">format</a></tt><tt class="py-op">)</tt> </tt> <a name="L209"></a><tt class="py-lineno"> 209</tt> <tt class="py-line"> </tt> <a name="L210"></a><tt class="py-lineno"> 210</tt> <tt class="py-line"> <tt class="py-name">records</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt> <a name="L211"></a><tt class="py-lineno"> 211</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-74" class="py-name" targets="Variable Bio.Emboss.primer3_format.record=Bio.Emboss.primer3_format-module.html#record,Variable Bio.Emboss.primersearch_format.record=Bio.Emboss.primersearch_format-module.html#record,Method Bio.GFF.Feature.record()=Bio.GFF.Feature-class.html#record,Variable Bio.LocusLink.web_parse.record=Bio.LocusLink.web_parse-module.html#record,Variable Bio.Ndb.record=Bio.Ndb-module.html#record,Function Bio.Std.record()=Bio.Std-module.html#record,Variable Bio.expressions.blocks.record=Bio.expressions.blocks-module.html#record,Variable Bio.expressions.embl.embl65.record=Bio.expressions.embl.embl65-module.html#record,Variable Bio.expressions.fasta.record=Bio.expressions.fasta-module.html#record,Variable Bio.expressions.genbank.record=Bio.expressions.genbank-module.html#record,Variable Bio.expressions.hmmpfam.record=Bio.expressions.hmmpfam-module.html#record,Variable Bio.expressions.swissprot.ipi.record=Bio.expressions.swissprot.ipi-module.html#record,Variable Bio.expressions.swissprot.speclist.record=Bio.expressions.swissprot.speclist-module.html#record,Variable Bio.expressions.swissprot.sprot38.record=Bio.expressions.swissprot.sprot38-module.html#record,Variable Bio.expressions.swissprot.sprot40.record=Bio.expressions.swissprot.sprot40-module.html#record,Variable Martel.test.test_swissprot38.record=Martel.test.test_swissprot38-module.html#record,Variable Martel.test.testformats.swissprot38.record=Martel.test.testformats.swissprot38-module.html#record"><a title="Bio.Emboss.primer3_format.record Bio.Emboss.primersearch_format.record Bio.GFF.Feature.record Bio.LocusLink.web_parse.record Bio.Ndb.record Bio.Std.record Bio.expressions.blocks.record Bio.expressions.embl.embl65.record Bio.expressions.fasta.record Bio.expressions.genbank.record Bio.expressions.hmmpfam.record Bio.expressions.swissprot.ipi.record Bio.expressions.swissprot.speclist.record Bio.expressions.swissprot.sprot38.record Bio.expressions.swissprot.sprot40.record Martel.test.test_swissprot38.record Martel.test.testformats.swissprot38.record" class="py-name" href="#" onclick="return doclink('link-74', 'record', 'link-74');">record</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">seq_record_iterator</tt> <tt class="py-op">:</tt> </tt> <a name="L212"></a><tt class="py-lineno"> 212</tt> <tt class="py-line"> <tt class="py-name">records</tt><tt class="py-op">.</tt><tt id="link-75" class="py-name" targets="Method Bio.Crystal.Chain.append()=Bio.Crystal.Chain-class.html#append,Method Bio.EUtils.POM.ElementNode.append()=Bio.EUtils.POM.ElementNode-class.html#append,Method Bio.EUtils.sourcegen.SourceFile.append()=Bio.EUtils.sourcegen.SourceFile-class.html#append,Method Bio.SCOP.Raf.SeqMap.append()=Bio.SCOP.Raf.SeqMap-class.html#append,Method Bio.Seq.MutableSeq.append()=Bio.Seq.MutableSeq-class.html#append,Method Bio.Wise.psw.Alignment.append()=Bio.Wise.psw.Alignment-class.html#append,Method Bio.Wise.psw.AlignmentColumn.append()=Bio.Wise.psw.AlignmentColumn-class.html#append,Method Martel.msre_parse.SubPattern.append()=Martel.msre_parse.SubPattern-class.html#append"><a title="Bio.Crystal.Chain.append Bio.EUtils.POM.ElementNode.append Bio.EUtils.sourcegen.SourceFile.append Bio.SCOP.Raf.SeqMap.append Bio.Seq.MutableSeq.append Bio.Wise.psw.Alignment.append Bio.Wise.psw.AlignmentColumn.append Martel.msre_parse.SubPattern.append" class="py-name" href="#" onclick="return doclink('link-75', 'append', 'link-75');">append</a></tt><tt class="py-op">(</tt><tt id="link-76" class="py-name"><a title="Bio.Emboss.primer3_format.record Bio.Emboss.primersearch_format.record Bio.GFF.Feature.record Bio.LocusLink.web_parse.record Bio.Ndb.record Bio.Std.record Bio.expressions.blocks.record Bio.expressions.embl.embl65.record Bio.expressions.fasta.record Bio.expressions.genbank.record Bio.expressions.hmmpfam.record Bio.expressions.swissprot.ipi.record Bio.expressions.swissprot.speclist.record Bio.expressions.swissprot.sprot38.record Bio.expressions.swissprot.sprot40.record Martel.test.test_swissprot38.record Martel.test.testformats.swissprot38.record" class="py-name" href="#" onclick="return doclink('link-76', 'record', 'link-74');">record</a></tt><tt class="py-op">)</tt> </tt> <a name="L213"></a><tt class="py-lineno"> 213</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">records</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">seq_count</tt> <tt class="py-op">:</tt> </tt> <a name="L214"></a><tt class="py-lineno"> 214</tt> <tt class="py-line"> <tt class="py-keyword">yield</tt> <tt id="link-77" class="py-name"><a title="Bio.SeqIO" class="py-name" href="#" onclick="return doclink('link-77', 'SeqIO', 'link-41');">SeqIO</a></tt><tt class="py-op">.</tt><tt id="link-78" class="py-name" targets="Function Bio.SeqIO.to_alignment()=Bio.SeqIO-module.html#to_alignment"><a title="Bio.SeqIO.to_alignment" class="py-name" href="#" onclick="return doclink('link-78', 'to_alignment', 'link-78');">to_alignment</a></tt><tt class="py-op">(</tt><tt class="py-name">records</tt><tt class="py-op">)</tt> </tt> <a name="L215"></a><tt class="py-lineno"> 215</tt> <tt class="py-line"> <tt class="py-name">records</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt> <a name="L216"></a><tt class="py-lineno"> 216</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">records</tt><tt class="py-op">)</tt> <tt class="py-op">></tt> <tt class="py-number">0</tt> <tt class="py-op">:</tt> </tt> <a name="L217"></a><tt class="py-lineno"> 217</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">ValueError</tt><tt class="py-op">(</tt><tt class="py-string">"Check seq_count argument, not enough sequences?"</tt><tt class="py-op">)</tt> </tt> <a name="L218"></a><tt class="py-lineno"> 218</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt> <a name="L219"></a><tt class="py-lineno"> 219</tt> <tt class="py-line"> <tt class="py-comment">#Must assume that there is a single alignment using all</tt> </tt> <a name="L220"></a><tt class="py-lineno"> 220</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-comment">#the SeqRecord objects:</tt> </tt> <a name="L221"></a><tt class="py-lineno"> 221</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-name">records</tt> <tt class="py-op">=</tt> <tt id="link-79" class="py-name" targets="Method Bio.Pathway.Rep.HashSet.HashSet.list()=Bio.Pathway.Rep.HashSet.HashSet-class.html#list"><a title="Bio.Pathway.Rep.HashSet.HashSet.list" class="py-name" href="#" onclick="return doclink('link-79', 'list', 'link-79');">list</a></tt><tt class="py-op">(</tt><tt id="link-80" class="py-name"><a title="Bio.SeqIO" class="py-name" href="#" onclick="return doclink('link-80', 'SeqIO', 'link-41');">SeqIO</a></tt><tt class="py-op">.</tt><tt id="link-81" class="py-name"><a title="Bio.Affy.CelFile.CelParser.parse Bio.AlignAce.Parser.AlignAceParser.parse Bio.AlignAce.Parser.CompareAceParser.parse Bio.AlignIO.parse Bio.Blast.NCBIStandalone.BlastErrorParser.parse Bio.Blast.NCBIStandalone.BlastParser.parse Bio.Blast.NCBIStandalone.PSIBlastParser.parse Bio.Blast.NCBIWWW.BlastParser.parse Bio.Blast.NCBIXML.BlastParser.parse Bio.Blast.NCBIXML.parse Bio.CDD.RecordParser.parse Bio.Compass.RecordParser.parse Bio.Decode.parse Bio.ECell.RecordParser.parse Bio.EUtils.POM.POMDocument.parse Bio.EUtils.parse Bio.Emboss.Primer.Primer3Parser.parse Bio.Emboss.Primer.PrimerSearchParser.parse Bio.Enzyme.RecordParser.parse Bio.Fasta.RecordParser.parse Bio.Fasta.SequenceParser.parse Bio.GenBank.FeatureParser.parse Bio.GenBank.LocationParser.parse Bio.GenBank.RecordParser.parse Bio.GenBank.Scanner.InsdcScanner.parse Bio.Geo.parse Bio.Gobase.RecordParser.parse Bio.IntelliGenetics.RecordParser.parse Bio.InterPro.InterProParser.parse Bio.KEGG.Compound.parse Bio.KEGG.Enzyme.parse Bio.KEGG.Map.parse Bio.LocusLink.RecordParser.parse Bio.LocusLink.web_parse.LocusLinkParser.parse Bio.MEME.Parser.MASTParser.parse Bio.MEME.Parser.MEMEParser.parse Bio.Medline.RecordParser.parse Bio.MetaTool.RecordParser.parse Bio.NBRF.RecordParser.parse Bio.Ndb.NdbParser.parse Bio.ParserSupport.AbstractParser.parse Bio.Parsers.spark.GenericParser.parse Bio.PopGen.FDist.RecordParser.parse Bio.PopGen.GenePop.RecordParser.parse Bio.PopGen.GenePop.parse Bio.Prosite.Prodoc.RecordParser.parse Bio.Prosite.Prodoc.parse Bio.Prosite.RecordParser.parse Bio.Prosite.parse Bio.Rebase.RecordParser.parse Bio.SCOP.Cla.Parser.parse Bio.SCOP.Cla.parse Bio.SCOP.Des.Parser.parse Bio.SCOP.Des.parse Bio.SCOP.Dom.Parser.parse Bio.SCOP.Dom.parse Bio.SCOP.Hie.Parser.parse Bio.SCOP.Hie.parse Bio.SCOP.Raf.Parser.parse Bio.SCOP.Raf.parse Bio.Saf.RecordParser.parse Bio.SeqIO.parse Bio.Sequencing.Ace.ACEParser.parse Bio.Sequencing.Ace.RecordParser.parse Bio.Sequencing.Phd.RecordParser.parse Bio.SwissProt.KeyWList.ListParser.parse Bio.SwissProt.KeyWList.parse Bio.SwissProt.SProt.RecordParser.parse Bio.SwissProt.SProt.SequenceParser.parse Bio.SwissProt.parse Bio.UniGene.RecordParser.parse Bio.Wise.psw.parse Martel.Parser.HeaderFooterParser.parse Martel.Parser.Parser.parse Martel.Parser.RecordParser.parse Martel.msre_parse.parse" class="py-name" href="#" onclick="return doclink('link-81', 'parse', 'link-71');">parse</a></tt><tt class="py-op">(</tt><tt id="link-82" class="py-name"><a title="Bio.LocusLink.web_parse.handle Bio.Ndb.handle" class="py-name" href="#" onclick="return doclink('link-82', 'handle', 'link-42');">handle</a></tt><tt class="py-op">,</tt> <tt id="link-83" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-83', 'format', 'link-43');">format</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt> <a name="L222"></a><tt class="py-lineno"> 222</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">records</tt> <tt class="py-op">:</tt> </tt> <a name="L223"></a><tt class="py-lineno"> 223</tt> <tt class="py-line"> <tt class="py-keyword">yield</tt> <tt id="link-84" class="py-name"><a title="Bio.SeqIO" class="py-name" href="#" onclick="return doclink('link-84', 'SeqIO', 'link-41');">SeqIO</a></tt><tt class="py-op">.</tt><tt id="link-85" class="py-name"><a title="Bio.SeqIO.to_alignment" class="py-name" href="#" onclick="return doclink('link-85', 'to_alignment', 'link-78');">to_alignment</a></tt><tt class="py-op">(</tt><tt class="py-name">records</tt><tt class="py-op">)</tt> </tt> <a name="L224"></a><tt class="py-lineno"> 224</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt> <a name="L225"></a><tt class="py-lineno"> 225</tt> <tt class="py-line"> <tt class="py-comment">#No alignment found!</tt> </tt> <a name="L226"></a><tt class="py-lineno"> 226</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-keyword">pass</tt> </tt> </div><a name="L227"></a><tt class="py-lineno"> 227</tt> <tt class="py-line"> </tt> <a name="parse"></a><div id="parse-def"><a name="L228"></a><tt class="py-lineno"> 228</tt> <a class="py-toggle" href="#" id="parse-toggle" onclick="return toggle('parse');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="Bio.AlignIO-module.html#parse">parse</a><tt class="py-op">(</tt><tt class="py-param">handle</tt><tt class="py-op">,</tt> <tt class="py-param">format</tt><tt class="py-op">,</tt> <tt class="py-param">seq_count</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt> </div><div id="parse-collapsed" style="display:none;" pad="++++" indent="++++"></div><div id="parse-expanded"><a name="L229"></a><tt class="py-lineno"> 229</tt> <tt class="py-line"> <tt class="py-docstring">"""Turns a sequence file into an iterator returning Alignment objects.</tt> </tt> <a name="L230"></a><tt class="py-lineno"> 230</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L231"></a><tt class="py-lineno"> 231</tt> <tt class="py-line"><tt class="py-docstring"> handle - handle to the file.</tt> </tt> <a name="L232"></a><tt class="py-lineno"> 232</tt> <tt class="py-line"><tt class="py-docstring"> format - string describing the file format.</tt> </tt> <a name="L233"></a><tt class="py-lineno"> 233</tt> <tt class="py-line"><tt class="py-docstring"> seq_count- Optional integer, number of sequences expected in</tt> </tt> <a name="L234"></a><tt class="py-lineno"> 234</tt> <tt class="py-line"><tt class="py-docstring"> each alignment. Recommended for fasta format files.</tt> </tt> <a name="L235"></a><tt class="py-lineno"> 235</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L236"></a><tt class="py-lineno"> 236</tt> <tt class="py-line"><tt class="py-docstring"> If you have the file name in a string 'filename', use:</tt> </tt> <a name="L237"></a><tt class="py-lineno"> 237</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L238"></a><tt class="py-lineno"> 238</tt> <tt class="py-line"><tt class="py-docstring"> from Bio import AlignIO</tt> </tt> <a name="L239"></a><tt class="py-lineno"> 239</tt> <tt class="py-line"><tt class="py-docstring"> my_iterator = AlignIO.parse(open(filename,"rU"), format)</tt> </tt> <a name="L240"></a><tt class="py-lineno"> 240</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L241"></a><tt class="py-lineno"> 241</tt> <tt class="py-line"><tt class="py-docstring"> If you have a string 'data' containing the file contents, use:</tt> </tt> <a name="L242"></a><tt class="py-lineno"> 242</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L243"></a><tt class="py-lineno"> 243</tt> <tt class="py-line"><tt class="py-docstring"> from Bio import AlignIO</tt> </tt> <a name="L244"></a><tt class="py-lineno"> 244</tt> <tt class="py-line"><tt class="py-docstring"> from StringIO import StringIO</tt> </tt> <a name="L245"></a><tt class="py-lineno"> 245</tt> <tt class="py-line"><tt class="py-docstring"> my_iterator = AlignIO.parse(StringIO(data), format)</tt> </tt> <a name="L246"></a><tt class="py-lineno"> 246</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L247"></a><tt class="py-lineno"> 247</tt> <tt class="py-line"><tt class="py-docstring"> Use the Bio.AlignIO.read(handle, format[, seq_count]) function when</tt> </tt> <a name="L248"></a><tt class="py-lineno"> 248</tt> <tt class="py-line"><tt class="py-docstring"> you expect a single record only.</tt> </tt> <a name="L249"></a><tt class="py-lineno"> 249</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt> <a name="L250"></a><tt class="py-lineno"> 250</tt> <tt class="py-line"> <tt class="py-keyword">from</tt> <tt id="link-86" class="py-name"><a title="Bio" class="py-name" href="#" onclick="return doclink('link-86', 'Bio', 'link-0');">Bio</a></tt> <tt class="py-keyword">import</tt> <tt id="link-87" class="py-name"><a title="Bio.SeqIO" class="py-name" href="#" onclick="return doclink('link-87', 'SeqIO', 'link-41');">SeqIO</a></tt> </tt> <a name="L251"></a><tt class="py-lineno"> 251</tt> <tt class="py-line"> </tt> <a name="L252"></a><tt class="py-lineno"> 252</tt> <tt class="py-line"> <tt class="py-comment">#Try and give helpful error messages:</tt> </tt> <a name="L253"></a><tt class="py-lineno"> 253</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt id="link-88" class="py-name"><a title="Bio.LocusLink.web_parse.handle Bio.Ndb.handle" class="py-name" href="#" onclick="return doclink('link-88', 'handle', 'link-42');">handle</a></tt><tt class="py-op">,</tt> <tt class="py-name">basestring</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt> <a name="L254"></a><tt class="py-lineno"> 254</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">TypeError</tt><tt class="py-op">(</tt><tt class="py-string">"Need a file handle, not a string (i.e. not a filename)"</tt><tt class="py-op">)</tt> </tt> <a name="L255"></a><tt class="py-lineno"> 255</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt id="link-89" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-89', 'format', 'link-43');">format</a></tt><tt class="py-op">,</tt> <tt class="py-name">basestring</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt> <a name="L256"></a><tt class="py-lineno"> 256</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">TypeError</tt><tt class="py-op">(</tt><tt class="py-string">"Need a string for the file format (lower case)"</tt><tt class="py-op">)</tt> </tt> <a name="L257"></a><tt class="py-lineno"> 257</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt id="link-90" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-90', 'format', 'link-43');">format</a></tt> <tt class="py-op">:</tt> </tt> <a name="L258"></a><tt class="py-lineno"> 258</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">ValueError</tt><tt class="py-op">(</tt><tt class="py-string">"Format required (lower case string)"</tt><tt class="py-op">)</tt> </tt> <a name="L259"></a><tt class="py-lineno"> 259</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-91" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-91', 'format', 'link-43');">format</a></tt> <tt class="py-op"><></tt> <tt id="link-92" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-92', 'format', 'link-43');">format</a></tt><tt class="py-op">.</tt><tt class="py-name">lower</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt> <a name="L260"></a><tt class="py-lineno"> 260</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">ValueError</tt><tt class="py-op">(</tt><tt class="py-string">"Format string '%s' should be lower case"</tt> <tt class="py-op">%</tt> <tt id="link-93" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-93', 'format', 'link-43');">format</a></tt><tt class="py-op">)</tt> </tt> <a name="L261"></a><tt class="py-lineno"> 261</tt> <tt class="py-line"> </tt> <a name="L262"></a><tt class="py-lineno"> 262</tt> <tt class="py-line"> <tt class="py-comment">#Map the file format to a sequence iterator:</tt> </tt> <a name="L263"></a><tt class="py-lineno"> 263</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-keyword">if</tt> <tt id="link-94" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-94', 'format', 'link-43');">format</a></tt> <tt class="py-keyword">in</tt> <tt id="link-95" class="py-name"><a title="Bio.AlignIO._FormatToIterator Bio.SeqIO._FormatToIterator" class="py-name" href="#" onclick="return doclink('link-95', '_FormatToIterator', 'link-20');">_FormatToIterator</a></tt> <tt class="py-op">:</tt> </tt> <a name="L264"></a><tt class="py-lineno"> 264</tt> <tt class="py-line"> <tt class="py-name">iterator_generator</tt> <tt class="py-op">=</tt> <tt id="link-96" class="py-name"><a title="Bio.AlignIO._FormatToIterator Bio.SeqIO._FormatToIterator" class="py-name" href="#" onclick="return doclink('link-96', '_FormatToIterator', 'link-20');">_FormatToIterator</a></tt><tt class="py-op">[</tt><tt id="link-97" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-97', 'format', 'link-43');">format</a></tt><tt class="py-op">]</tt> </tt> <a name="L265"></a><tt class="py-lineno"> 265</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">iterator_generator</tt><tt class="py-op">(</tt><tt id="link-98" class="py-name"><a title="Bio.LocusLink.web_parse.handle Bio.Ndb.handle" class="py-name" href="#" onclick="return doclink('link-98', 'handle', 'link-42');">handle</a></tt><tt class="py-op">,</tt> <tt class="py-name">seq_count</tt><tt class="py-op">)</tt> </tt> <a name="L266"></a><tt class="py-lineno"> 266</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt id="link-99" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-99', 'format', 'link-43');">format</a></tt> <tt class="py-keyword">in</tt> <tt id="link-100" class="py-name"><a title="Bio.SeqIO" class="py-name" href="#" onclick="return doclink('link-100', 'SeqIO', 'link-41');">SeqIO</a></tt><tt class="py-op">.</tt><tt id="link-101" class="py-name"><a title="Bio.AlignIO._FormatToIterator Bio.SeqIO._FormatToIterator" class="py-name" href="#" onclick="return doclink('link-101', '_FormatToIterator', 'link-20');">_FormatToIterator</a></tt> <tt class="py-op">:</tt> </tt> <a name="L267"></a><tt class="py-lineno"> 267</tt> <tt class="py-line"> <tt class="py-comment">#Exploit the existing SeqIO parser to the dirty work!</tt> </tt> <a name="L268"></a><tt class="py-lineno"> 268</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-keyword">return</tt> <tt id="link-102" class="py-name" targets="Function Bio.AlignIO._SeqIO_to_alignment_iterator()=Bio.AlignIO-module.html#_SeqIO_to_alignment_iterator"><a title="Bio.AlignIO._SeqIO_to_alignment_iterator" class="py-name" href="#" onclick="return doclink('link-102', '_SeqIO_to_alignment_iterator', 'link-102');">_SeqIO_to_alignment_iterator</a></tt><tt class="py-op">(</tt><tt id="link-103" class="py-name"><a title="Bio.LocusLink.web_parse.handle Bio.Ndb.handle" class="py-name" href="#" onclick="return doclink('link-103', 'handle', 'link-42');">handle</a></tt><tt class="py-op">,</tt> <tt id="link-104" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-104', 'format', 'link-43');">format</a></tt><tt class="py-op">,</tt> <tt class="py-name">seq_count</tt><tt class="py-op">)</tt> </tt> <a name="L269"></a><tt class="py-lineno"> 269</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt> <a name="L270"></a><tt class="py-lineno"> 270</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">ValueError</tt><tt class="py-op">(</tt><tt class="py-string">"Unknown format '%s'"</tt> <tt class="py-op">%</tt> <tt id="link-105" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-105', 'format', 'link-43');">format</a></tt><tt class="py-op">)</tt> </tt> </div><a name="L271"></a><tt class="py-lineno"> 271</tt> <tt class="py-line"> </tt> <a name="read"></a><div id="read-def"><a name="L272"></a><tt class="py-lineno"> 272</tt> <a class="py-toggle" href="#" id="read-toggle" onclick="return toggle('read');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="Bio.AlignIO-module.html#read">read</a><tt class="py-op">(</tt><tt class="py-param">handle</tt><tt class="py-op">,</tt> <tt class="py-param">format</tt><tt class="py-op">,</tt> <tt class="py-param">seq_count</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt> </div><div id="read-collapsed" style="display:none;" pad="++++" indent="++++"></div><div id="read-expanded"><a name="L273"></a><tt class="py-lineno"> 273</tt> <tt class="py-line"> <tt class="py-docstring">"""Turns an alignment file into a single Alignment object.</tt> </tt> <a name="L274"></a><tt class="py-lineno"> 274</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L275"></a><tt class="py-lineno"> 275</tt> <tt class="py-line"><tt class="py-docstring"> handle - handle to the file.</tt> </tt> <a name="L276"></a><tt class="py-lineno"> 276</tt> <tt class="py-line"><tt class="py-docstring"> format - string describing the file format.</tt> </tt> <a name="L277"></a><tt class="py-lineno"> 277</tt> <tt class="py-line"><tt class="py-docstring"> seq_count- Optional interger, number of sequences expected in</tt> </tt> <a name="L278"></a><tt class="py-lineno"> 278</tt> <tt class="py-line"><tt class="py-docstring"> the alignment to check you got what you expected.</tt> </tt> <a name="L279"></a><tt class="py-lineno"> 279</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L280"></a><tt class="py-lineno"> 280</tt> <tt class="py-line"><tt class="py-docstring"> If the handle contains no alignments, or more than one alignment,</tt> </tt> <a name="L281"></a><tt class="py-lineno"> 281</tt> <tt class="py-line"><tt class="py-docstring"> an exception is raised. For example, using a PFAM/Stockholm file</tt> </tt> <a name="L282"></a><tt class="py-lineno"> 282</tt> <tt class="py-line"><tt class="py-docstring"> containing one alignment:</tt> </tt> <a name="L283"></a><tt class="py-lineno"> 283</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L284"></a><tt class="py-lineno"> 284</tt> <tt class="py-line"><tt class="py-docstring"> from Bio import AlignIO</tt> </tt> <a name="L285"></a><tt class="py-lineno"> 285</tt> <tt class="py-line"><tt class="py-docstring"> align = AlignIO.read(open("example.sth"), "stockholm")</tt> </tt> <a name="L286"></a><tt class="py-lineno"> 286</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L287"></a><tt class="py-lineno"> 287</tt> <tt class="py-line"><tt class="py-docstring"> If however you want the first alignment from a file containing</tt> </tt> <a name="L288"></a><tt class="py-lineno"> 288</tt> <tt class="py-line"><tt class="py-docstring"> multiple alignments this function would raise an exception.</tt> </tt> <a name="L289"></a><tt class="py-lineno"> 289</tt> <tt class="py-line"><tt class="py-docstring"> Instead use:</tt> </tt> <a name="L290"></a><tt class="py-lineno"> 290</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L291"></a><tt class="py-lineno"> 291</tt> <tt class="py-line"><tt class="py-docstring"> from Bio import AlignIO</tt> </tt> <a name="L292"></a><tt class="py-lineno"> 292</tt> <tt class="py-line"><tt class="py-docstring"> align = AlignIO.parse(open("example.sth"), "stockholm").next()</tt> </tt> <a name="L293"></a><tt class="py-lineno"> 293</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt> <a name="L294"></a><tt class="py-lineno"> 294</tt> <tt class="py-line"><tt class="py-docstring"> Use the Bio.AlignIO.parse() function if you want to read multiple</tt> </tt> <a name="L295"></a><tt class="py-lineno"> 295</tt> <tt class="py-line"><tt class="py-docstring"> records from the handle.</tt> </tt> <a name="L296"></a><tt class="py-lineno"> 296</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt> <a name="L297"></a><tt class="py-lineno"> 297</tt> <tt class="py-line"> <tt class="py-name">iterator</tt> <tt class="py-op">=</tt> <tt id="link-106" class="py-name"><a title="Bio.Affy.CelFile.CelParser.parse Bio.AlignAce.Parser.AlignAceParser.parse Bio.AlignAce.Parser.CompareAceParser.parse Bio.AlignIO.parse Bio.Blast.NCBIStandalone.BlastErrorParser.parse Bio.Blast.NCBIStandalone.BlastParser.parse Bio.Blast.NCBIStandalone.PSIBlastParser.parse Bio.Blast.NCBIWWW.BlastParser.parse Bio.Blast.NCBIXML.BlastParser.parse Bio.Blast.NCBIXML.parse Bio.CDD.RecordParser.parse Bio.Compass.RecordParser.parse Bio.Decode.parse Bio.ECell.RecordParser.parse Bio.EUtils.POM.POMDocument.parse Bio.EUtils.parse Bio.Emboss.Primer.Primer3Parser.parse Bio.Emboss.Primer.PrimerSearchParser.parse Bio.Enzyme.RecordParser.parse Bio.Fasta.RecordParser.parse Bio.Fasta.SequenceParser.parse Bio.GenBank.FeatureParser.parse Bio.GenBank.LocationParser.parse Bio.GenBank.RecordParser.parse Bio.GenBank.Scanner.InsdcScanner.parse Bio.Geo.parse Bio.Gobase.RecordParser.parse Bio.IntelliGenetics.RecordParser.parse Bio.InterPro.InterProParser.parse Bio.KEGG.Compound.parse Bio.KEGG.Enzyme.parse Bio.KEGG.Map.parse Bio.LocusLink.RecordParser.parse Bio.LocusLink.web_parse.LocusLinkParser.parse Bio.MEME.Parser.MASTParser.parse Bio.MEME.Parser.MEMEParser.parse Bio.Medline.RecordParser.parse Bio.MetaTool.RecordParser.parse Bio.NBRF.RecordParser.parse Bio.Ndb.NdbParser.parse Bio.ParserSupport.AbstractParser.parse Bio.Parsers.spark.GenericParser.parse Bio.PopGen.FDist.RecordParser.parse Bio.PopGen.GenePop.RecordParser.parse Bio.PopGen.GenePop.parse Bio.Prosite.Prodoc.RecordParser.parse Bio.Prosite.Prodoc.parse Bio.Prosite.RecordParser.parse Bio.Prosite.parse Bio.Rebase.RecordParser.parse Bio.SCOP.Cla.Parser.parse Bio.SCOP.Cla.parse Bio.SCOP.Des.Parser.parse Bio.SCOP.Des.parse Bio.SCOP.Dom.Parser.parse Bio.SCOP.Dom.parse Bio.SCOP.Hie.Parser.parse Bio.SCOP.Hie.parse Bio.SCOP.Raf.Parser.parse Bio.SCOP.Raf.parse Bio.Saf.RecordParser.parse Bio.SeqIO.parse Bio.Sequencing.Ace.ACEParser.parse Bio.Sequencing.Ace.RecordParser.parse Bio.Sequencing.Phd.RecordParser.parse Bio.SwissProt.KeyWList.ListParser.parse Bio.SwissProt.KeyWList.parse Bio.SwissProt.SProt.RecordParser.parse Bio.SwissProt.SProt.SequenceParser.parse Bio.SwissProt.parse Bio.UniGene.RecordParser.parse Bio.Wise.psw.parse Martel.Parser.HeaderFooterParser.parse Martel.Parser.Parser.parse Martel.Parser.RecordParser.parse Martel.msre_parse.parse" class="py-name" href="#" onclick="return doclink('link-106', 'parse', 'link-71');">parse</a></tt><tt class="py-op">(</tt><tt id="link-107" class="py-name"><a title="Bio.LocusLink.web_parse.handle Bio.Ndb.handle" class="py-name" href="#" onclick="return doclink('link-107', 'handle', 'link-42');">handle</a></tt><tt class="py-op">,</tt> <tt id="link-108" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-108', 'format', 'link-43');">format</a></tt><tt class="py-op">,</tt> <tt class="py-name">seq_count</tt><tt class="py-op">)</tt> </tt> <a name="L298"></a><tt class="py-lineno"> 298</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt> <a name="L299"></a><tt class="py-lineno"> 299</tt> <tt class="py-line"> <tt class="py-name">first</tt> <tt class="py-op">=</tt> <tt class="py-name">iterator</tt><tt class="py-op">.</tt><tt id="link-109" class="py-name" targets="Method Bio.AlignIO.ClustalIO.ClustalIterator.next()=Bio.AlignIO.ClustalIO.ClustalIterator-class.html#next,Method Bio.AlignIO.EmbossIO.EmbossIterator.next()=Bio.AlignIO.EmbossIO.EmbossIterator-class.html#next,Method Bio.AlignIO.FastaIO.FastaM10Iterator.next()=Bio.AlignIO.FastaIO.FastaM10Iterator-class.html#next,Method Bio.AlignIO.Interfaces.AlignmentIterator.next()=Bio.AlignIO.Interfaces.AlignmentIterator-class.html#next,Method Bio.AlignIO.PhylipIO.PhylipIterator.next()=Bio.AlignIO.PhylipIO.PhylipIterator-class.html#next,Method Bio.AlignIO.StockholmIO.StockholmIterator.next()=Bio.AlignIO.StockholmIO.StockholmIterator-class.html#next,Method Bio.Blast.NCBIStandalone.Iterator.next()=Bio.Blast.NCBIStandalone.Iterator-class.html#next,Method Bio.Blast.ParseBlastTable.BlastTableReader.next()=Bio.Blast.ParseBlastTable.BlastTableReader-class.html#next,Method Bio.CDD.Iterator.next()=Bio.CDD.Iterator-class.html#next,Method Bio.Compass.Iterator.next()=Bio.Compass.Iterator-class.html#next,Method Bio.DocSQL.IterationCursor.next()=Bio.DocSQL.IterationCursor-class.html#next,Method Bio.ECell.Iterator.next()=Bio.ECell.Iterator-class.html#next,Method Bio.Enzyme.Iterator.next()=Bio.Enzyme.Iterator-class.html#next,Method Bio.Fasta.Iterator.next()=Bio.Fasta.Iterator-class.html#next,Method Bio.GenBank.Iterator.next()=Bio.GenBank.Iterator-class.html#next,Method Bio.Gobase.Iterator.next()=Bio.Gobase.Iterator-class.html#next,Method Bio.IntelliGenetics.IntelliGeneticsReader.next()=Bio.IntelliGenetics.IntelliGeneticsReader-class.html#next,Method Bio.IntelliGenetics.Iterator.next()=Bio.IntelliGenetics.Iterator-class.html#next,Method Bio.LocusLink.Iterator.next()=Bio.LocusLink.Iterator-class.html#next,Method Bio.Medline.Iterator.next()=Bio.Medline.Iterator-class.html#next,Method Bio.MetaTool.Iterator.next()=Bio.MetaTool.Iterator-class.html#next,Method Bio.NBRF.Iterator.next()=Bio.NBRF.Iterator-class.html#next,Method Bio.Nexus.Nexus.CharBuffer.next()=Bio.Nexus.Nexus.CharBuffer-class.html#next,Method Bio.Prosite.Iterator.next()=Bio.Prosite.Iterator-class.html#next,Method Bio.Prosite.Prodoc.Iterator.next()=Bio.Prosite.Prodoc.Iterator-class.html#next,Method Bio.Rebase.Iterator.next()=Bio.Rebase.Iterator-class.html#next,Method Bio.SCOP.Cla.Iterator.next()=Bio.SCOP.Cla.Iterator-class.html#next,Method Bio.SCOP.Des.Iterator.next()=Bio.SCOP.Des.Iterator-class.html#next,Method Bio.SCOP.Dom.Iterator.next()=Bio.SCOP.Dom.Iterator-class.html#next,Method Bio.SCOP.Hie.Iterator.next()=Bio.SCOP.Hie.Iterator-class.html#next,Method Bio.SCOP.Raf.Iterator.next()=Bio.SCOP.Raf.Iterator-class.html#next,Method Bio.Saf.Iterator.next()=Bio.Saf.Iterator-class.html#next,Method Bio.SeqIO.Interfaces.InterlacedSequenceIterator.next()=Bio.SeqIO.Interfaces.InterlacedSequenceIterator-class.html#next,Method Bio.SeqIO.Interfaces.SequenceIterator.next()=Bio.SeqIO.Interfaces.SequenceIterator-class.html#next,Method Bio.Sequencing.Ace.Iterator.next()=Bio.Sequencing.Ace.Iterator-class.html#next,Method Bio.Sequencing.Phd.Iterator.next()=Bio.Sequencing.Phd.Iterator-class.html#next,Method Bio.SwissProt.SProt.Iterator.next()=Bio.SwissProt.SProt.Iterator-class.html#next,Method Bio.UniGene.Iterator.next()=Bio.UniGene.Iterator-class.html#next,Method Martel.Iterator.EventStream.next()=Martel.Iterator.EventStream-class.html#next,Method Martel.Iterator.HeaderFooterEventStream.next()=Martel.Iterator.HeaderFooterEventStream-class.html#next,Method Martel.Iterator.Iterate.next()=Martel.Iterator.Iterate-class.html#next,Method Martel.Iterator.RecordEventStream.next()=Martel.Iterator.RecordEventStream-class.html#next,Method Martel.RecordReader.CountLines.next()=Martel.RecordReader.CountLines-class.html#next,Method Martel.RecordReader.EndsWith.next()=Martel.RecordReader.EndsWith-class.html#next,Method Martel.RecordReader.Everything.next()=Martel.RecordReader.Everything-class.html#next,Method Martel.RecordReader.Nothing.next()=Martel.RecordReader.Nothing-class.html#next,Method Martel.RecordReader.RecordReader.next()=Martel.RecordReader.RecordReader-class.html#next,Method Martel.RecordReader.StartsWith.next()=Martel.RecordReader.StartsWith-class.html#next,Method Martel.RecordReader.Until.next()=Martel.RecordReader.Until-class.html#next"><a title="Bio.AlignIO.ClustalIO.ClustalIterator.next Bio.AlignIO.EmbossIO.EmbossIterator.next Bio.AlignIO.FastaIO.FastaM10Iterator.next Bio.AlignIO.Interfaces.AlignmentIterator.next Bio.AlignIO.PhylipIO.PhylipIterator.next Bio.AlignIO.StockholmIO.StockholmIterator.next Bio.Blast.NCBIStandalone.Iterator.next Bio.Blast.ParseBlastTable.BlastTableReader.next Bio.CDD.Iterator.next Bio.Compass.Iterator.next Bio.DocSQL.IterationCursor.next Bio.ECell.Iterator.next Bio.Enzyme.Iterator.next Bio.Fasta.Iterator.next Bio.GenBank.Iterator.next Bio.Gobase.Iterator.next Bio.IntelliGenetics.IntelliGeneticsReader.next Bio.IntelliGenetics.Iterator.next Bio.LocusLink.Iterator.next Bio.Medline.Iterator.next Bio.MetaTool.Iterator.next Bio.NBRF.Iterator.next Bio.Nexus.Nexus.CharBuffer.next Bio.Prosite.Iterator.next Bio.Prosite.Prodoc.Iterator.next Bio.Rebase.Iterator.next Bio.SCOP.Cla.Iterator.next Bio.SCOP.Des.Iterator.next Bio.SCOP.Dom.Iterator.next Bio.SCOP.Hie.Iterator.next Bio.SCOP.Raf.Iterator.next Bio.Saf.Iterator.next Bio.SeqIO.Interfaces.InterlacedSequenceIterator.next Bio.SeqIO.Interfaces.SequenceIterator.next Bio.Sequencing.Ace.Iterator.next Bio.Sequencing.Phd.Iterator.next Bio.SwissProt.SProt.Iterator.next Bio.UniGene.Iterator.next Martel.Iterator.EventStream.next Martel.Iterator.HeaderFooterEventStream.next Martel.Iterator.Iterate.next Martel.Iterator.RecordEventStream.next Martel.RecordReader.CountLines.next Martel.RecordReader.EndsWith.next Martel.RecordReader.Everything.next Martel.RecordReader.Nothing.next Martel.RecordReader.RecordReader.next Martel.RecordReader.StartsWith.next Martel.RecordReader.Until.next" class="py-name" href="#" onclick="return doclink('link-109', 'next', 'link-109');">next</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt> <a name="L300"></a><tt class="py-lineno"> 300</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">StopIteration</tt> <tt class="py-op">:</tt> </tt> <a name="L301"></a><tt class="py-lineno"> 301</tt> <tt class="py-line"> <tt class="py-name">first</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt> <a name="L302"></a><tt class="py-lineno"> 302</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">first</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt> <tt class="py-op">:</tt> </tt> <a name="L303"></a><tt class="py-lineno"> 303</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-string">"No records found in handle"</tt> </tt> <a name="L304"></a><tt class="py-lineno"> 304</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt> <a name="L305"></a><tt class="py-lineno"> 305</tt> <tt class="py-line"> <tt class="py-name">second</tt> <tt class="py-op">=</tt> <tt class="py-name">iterator</tt><tt class="py-op">.</tt><tt id="link-110" class="py-name"><a title="Bio.AlignIO.ClustalIO.ClustalIterator.next Bio.AlignIO.EmbossIO.EmbossIterator.next Bio.AlignIO.FastaIO.FastaM10Iterator.next Bio.AlignIO.Interfaces.AlignmentIterator.next Bio.AlignIO.PhylipIO.PhylipIterator.next Bio.AlignIO.StockholmIO.StockholmIterator.next Bio.Blast.NCBIStandalone.Iterator.next Bio.Blast.ParseBlastTable.BlastTableReader.next Bio.CDD.Iterator.next Bio.Compass.Iterator.next Bio.DocSQL.IterationCursor.next Bio.ECell.Iterator.next Bio.Enzyme.Iterator.next Bio.Fasta.Iterator.next Bio.GenBank.Iterator.next Bio.Gobase.Iterator.next Bio.IntelliGenetics.IntelliGeneticsReader.next Bio.IntelliGenetics.Iterator.next Bio.LocusLink.Iterator.next Bio.Medline.Iterator.next Bio.MetaTool.Iterator.next Bio.NBRF.Iterator.next Bio.Nexus.Nexus.CharBuffer.next Bio.Prosite.Iterator.next Bio.Prosite.Prodoc.Iterator.next Bio.Rebase.Iterator.next Bio.SCOP.Cla.Iterator.next Bio.SCOP.Des.Iterator.next Bio.SCOP.Dom.Iterator.next Bio.SCOP.Hie.Iterator.next Bio.SCOP.Raf.Iterator.next Bio.Saf.Iterator.next Bio.SeqIO.Interfaces.InterlacedSequenceIterator.next Bio.SeqIO.Interfaces.SequenceIterator.next Bio.Sequencing.Ace.Iterator.next Bio.Sequencing.Phd.Iterator.next Bio.SwissProt.SProt.Iterator.next Bio.UniGene.Iterator.next Martel.Iterator.EventStream.next Martel.Iterator.HeaderFooterEventStream.next Martel.Iterator.Iterate.next Martel.Iterator.RecordEventStream.next Martel.RecordReader.CountLines.next Martel.RecordReader.EndsWith.next Martel.RecordReader.Everything.next Martel.RecordReader.Nothing.next Martel.RecordReader.RecordReader.next Martel.RecordReader.StartsWith.next Martel.RecordReader.Until.next" class="py-name" href="#" onclick="return doclink('link-110', 'next', 'link-109');">next</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt> <a name="L306"></a><tt class="py-lineno"> 306</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">StopIteration</tt> <tt class="py-op">:</tt> </tt> <a name="L307"></a><tt class="py-lineno"> 307</tt> <tt class="py-line"> <tt class="py-name">second</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt> <a name="L308"></a><tt class="py-lineno"> 308</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">second</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-op">:</tt> </tt> <a name="L309"></a><tt class="py-lineno"> 309</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-string">"More than one record found in handle"</tt> </tt> <a name="L310"></a><tt class="py-lineno"> 310</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">seq_count</tt> <tt class="py-op">:</tt> </tt> <a name="L311"></a><tt class="py-lineno"> 311</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">first</tt><tt class="py-op">.</tt><tt id="link-111" class="py-name"><a title="Bio.Align.Generic.Alignment.get_all_seqs" class="py-name" href="#" onclick="return doclink('link-111', 'get_all_seqs', 'link-62');">get_all_seqs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">==</tt><tt class="py-name">seq_count</tt> </tt> <a name="L312"></a><tt class="py-lineno"> 312</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">first</tt> </tt> </div><a name="L313"></a><tt class="py-lineno"> 313</tt> <tt class="py-line"> </tt> <a name="L314"></a><tt class="py-lineno"> 314</tt> <tt class="py-line"> </tt> <a name="L315"></a><tt class="py-lineno"> 315</tt> <tt class="py-line"><tt class="py-keyword">if</tt> <tt class="py-name">__name__</tt> <tt class="py-op">==</tt> <tt class="py-string">"__main__"</tt> <tt class="py-op">:</tt> </tt> <a name="L316"></a><tt class="py-lineno"> 316</tt> <tt class="py-line"> <tt class="py-comment">#Run some tests...</tt> </tt> <a name="L317"></a><tt class="py-lineno"> 317</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-keyword">from</tt> <tt id="link-112" class="py-name"><a title="Bio" class="py-name" href="#" onclick="return doclink('link-112', 'Bio', 'link-0');">Bio</a></tt><tt class="py-op">.</tt><tt id="link-113" class="py-name"><a title="Bio.Alphabet Bio.Alphabet.Alphabet" class="py-name" href="#" onclick="return doclink('link-113', 'Alphabet', 'link-1');">Alphabet</a></tt> <tt class="py-keyword">import</tt> <tt id="link-114" class="py-name" targets="Variable Bio.Alphabet.generic_nucleotide=Bio.Alphabet-module.html#generic_nucleotide"><a title="Bio.Alphabet.generic_nucleotide" class="py-name" href="#" onclick="return doclink('link-114', 'generic_nucleotide', 'link-114');">generic_nucleotide</a></tt> </tt> <a name="L318"></a><tt class="py-lineno"> 318</tt> <tt class="py-line"> <tt class="py-keyword">from</tt> <tt class="py-name">sets</tt> <tt class="py-keyword">import</tt> <tt class="py-name">Set</tt> </tt> <a name="L319"></a><tt class="py-lineno"> 319</tt> <tt class="py-line"> </tt> <a name="L320"></a><tt class="py-lineno"> 320</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-115" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-115', 'format', 'link-43');">format</a></tt> <tt class="py-keyword">in</tt> <tt id="link-116" class="py-name"><a title="Bio.AlignIO._FormatToIterator Bio.SeqIO._FormatToIterator" class="py-name" href="#" onclick="return doclink('link-116', '_FormatToIterator', 'link-20');">_FormatToIterator</a></tt> <tt class="py-op">:</tt> </tt> <a name="L321"></a><tt class="py-lineno"> 321</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"parse(handle to empty file)"</tt> </tt> <a name="L322"></a><tt class="py-lineno"> 322</tt> <tt class="py-line"> <tt class="py-name">iterator</tt> <tt class="py-op">=</tt> <tt id="link-117" class="py-name"><a title="Bio.Affy.CelFile.CelParser.parse Bio.AlignAce.Parser.AlignAceParser.parse Bio.AlignAce.Parser.CompareAceParser.parse Bio.AlignIO.parse Bio.Blast.NCBIStandalone.BlastErrorParser.parse Bio.Blast.NCBIStandalone.BlastParser.parse Bio.Blast.NCBIStandalone.PSIBlastParser.parse Bio.Blast.NCBIWWW.BlastParser.parse Bio.Blast.NCBIXML.BlastParser.parse Bio.Blast.NCBIXML.parse Bio.CDD.RecordParser.parse Bio.Compass.RecordParser.parse Bio.Decode.parse Bio.ECell.RecordParser.parse Bio.EUtils.POM.POMDocument.parse Bio.EUtils.parse Bio.Emboss.Primer.Primer3Parser.parse Bio.Emboss.Primer.PrimerSearchParser.parse Bio.Enzyme.RecordParser.parse Bio.Fasta.RecordParser.parse Bio.Fasta.SequenceParser.parse Bio.GenBank.FeatureParser.parse Bio.GenBank.LocationParser.parse Bio.GenBank.RecordParser.parse Bio.GenBank.Scanner.InsdcScanner.parse Bio.Geo.parse Bio.Gobase.RecordParser.parse Bio.IntelliGenetics.RecordParser.parse Bio.InterPro.InterProParser.parse Bio.KEGG.Compound.parse Bio.KEGG.Enzyme.parse Bio.KEGG.Map.parse Bio.LocusLink.RecordParser.parse Bio.LocusLink.web_parse.LocusLinkParser.parse Bio.MEME.Parser.MASTParser.parse Bio.MEME.Parser.MEMEParser.parse Bio.Medline.RecordParser.parse Bio.MetaTool.RecordParser.parse Bio.NBRF.RecordParser.parse Bio.Ndb.NdbParser.parse Bio.ParserSupport.AbstractParser.parse Bio.Parsers.spark.GenericParser.parse Bio.PopGen.FDist.RecordParser.parse Bio.PopGen.GenePop.RecordParser.parse Bio.PopGen.GenePop.parse Bio.Prosite.Prodoc.RecordParser.parse Bio.Prosite.Prodoc.parse Bio.Prosite.RecordParser.parse Bio.Prosite.parse Bio.Rebase.RecordParser.parse Bio.SCOP.Cla.Parser.parse Bio.SCOP.Cla.parse Bio.SCOP.Des.Parser.parse Bio.SCOP.Des.parse Bio.SCOP.Dom.Parser.parse Bio.SCOP.Dom.parse Bio.SCOP.Hie.Parser.parse Bio.SCOP.Hie.parse Bio.SCOP.Raf.Parser.parse Bio.SCOP.Raf.parse Bio.Saf.RecordParser.parse Bio.SeqIO.parse Bio.Sequencing.Ace.ACEParser.parse Bio.Sequencing.Ace.RecordParser.parse Bio.Sequencing.Phd.RecordParser.parse Bio.SwissProt.KeyWList.ListParser.parse Bio.SwissProt.KeyWList.parse Bio.SwissProt.SProt.RecordParser.parse Bio.SwissProt.SProt.SequenceParser.parse Bio.SwissProt.parse Bio.UniGene.RecordParser.parse Bio.Wise.psw.parse Martel.Parser.HeaderFooterParser.parse Martel.Parser.Parser.parse Martel.Parser.RecordParser.parse Martel.msre_parse.parse" class="py-name" href="#" onclick="return doclink('link-117', 'parse', 'link-71');">parse</a></tt><tt class="py-op">(</tt><tt class="py-name">StringIO</tt><tt class="py-op">(</tt><tt class="py-string">""</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt id="link-118" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-118', 'format', 'link-43');">format</a></tt><tt class="py-op">=</tt><tt id="link-119" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-119', 'format', 'link-43');">format</a></tt><tt class="py-op">)</tt> </tt> <a name="L323"></a><tt class="py-lineno"> 323</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt id="link-120" class="py-name"><a title="Bio.Pathway.Rep.HashSet.HashSet.list" class="py-name" href="#" onclick="return doclink('link-120', 'list', 'link-79');">list</a></tt><tt class="py-op">(</tt><tt class="py-name">iterator</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">==</tt><tt class="py-number">0</tt> </tt> <a name="L324"></a><tt class="py-lineno"> 324</tt> <tt class="py-line"> <tt class="py-name">iterator</tt> <tt class="py-op">=</tt> <tt id="link-121" class="py-name"><a title="Bio.Affy.CelFile.CelParser.parse Bio.AlignAce.Parser.AlignAceParser.parse Bio.AlignAce.Parser.CompareAceParser.parse Bio.AlignIO.parse Bio.Blast.NCBIStandalone.BlastErrorParser.parse Bio.Blast.NCBIStandalone.BlastParser.parse Bio.Blast.NCBIStandalone.PSIBlastParser.parse Bio.Blast.NCBIWWW.BlastParser.parse Bio.Blast.NCBIXML.BlastParser.parse Bio.Blast.NCBIXML.parse Bio.CDD.RecordParser.parse Bio.Compass.RecordParser.parse Bio.Decode.parse Bio.ECell.RecordParser.parse Bio.EUtils.POM.POMDocument.parse Bio.EUtils.parse Bio.Emboss.Primer.Primer3Parser.parse Bio.Emboss.Primer.PrimerSearchParser.parse Bio.Enzyme.RecordParser.parse Bio.Fasta.RecordParser.parse Bio.Fasta.SequenceParser.parse Bio.GenBank.FeatureParser.parse Bio.GenBank.LocationParser.parse Bio.GenBank.RecordParser.parse Bio.GenBank.Scanner.InsdcScanner.parse Bio.Geo.parse Bio.Gobase.RecordParser.parse Bio.IntelliGenetics.RecordParser.parse Bio.InterPro.InterProParser.parse Bio.KEGG.Compound.parse Bio.KEGG.Enzyme.parse Bio.KEGG.Map.parse Bio.LocusLink.RecordParser.parse Bio.LocusLink.web_parse.LocusLinkParser.parse Bio.MEME.Parser.MASTParser.parse Bio.MEME.Parser.MEMEParser.parse Bio.Medline.RecordParser.parse Bio.MetaTool.RecordParser.parse Bio.NBRF.RecordParser.parse Bio.Ndb.NdbParser.parse Bio.ParserSupport.AbstractParser.parse Bio.Parsers.spark.GenericParser.parse Bio.PopGen.FDist.RecordParser.parse Bio.PopGen.GenePop.RecordParser.parse Bio.PopGen.GenePop.parse Bio.Prosite.Prodoc.RecordParser.parse Bio.Prosite.Prodoc.parse Bio.Prosite.RecordParser.parse Bio.Prosite.parse Bio.Rebase.RecordParser.parse Bio.SCOP.Cla.Parser.parse Bio.SCOP.Cla.parse Bio.SCOP.Des.Parser.parse Bio.SCOP.Des.parse Bio.SCOP.Dom.Parser.parse Bio.SCOP.Dom.parse Bio.SCOP.Hie.Parser.parse Bio.SCOP.Hie.parse Bio.SCOP.Raf.Parser.parse Bio.SCOP.Raf.parse Bio.Saf.RecordParser.parse Bio.SeqIO.parse Bio.Sequencing.Ace.ACEParser.parse Bio.Sequencing.Ace.RecordParser.parse Bio.Sequencing.Phd.RecordParser.parse Bio.SwissProt.KeyWList.ListParser.parse Bio.SwissProt.KeyWList.parse Bio.SwissProt.SProt.RecordParser.parse Bio.SwissProt.SProt.SequenceParser.parse Bio.SwissProt.parse Bio.UniGene.RecordParser.parse Bio.Wise.psw.parse Martel.Parser.HeaderFooterParser.parse Martel.Parser.Parser.parse Martel.Parser.RecordParser.parse Martel.msre_parse.parse" class="py-name" href="#" onclick="return doclink('link-121', 'parse', 'link-71');">parse</a></tt><tt class="py-op">(</tt><tt class="py-name">StringIO</tt><tt class="py-op">(</tt><tt class="py-string">""</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt id="link-122" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-122', 'format', 'link-43');">format</a></tt><tt class="py-op">=</tt><tt id="link-123" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-123', 'format', 'link-43');">format</a></tt><tt class="py-op">,</tt> <tt class="py-name">seq_count</tt> <tt class="py-op">=</tt> <tt class="py-number">42</tt><tt class="py-op">)</tt> </tt> <a name="L325"></a><tt class="py-lineno"> 325</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt id="link-124" class="py-name"><a title="Bio.Pathway.Rep.HashSet.HashSet.list" class="py-name" href="#" onclick="return doclink('link-124', 'list', 'link-79');">list</a></tt><tt class="py-op">(</tt><tt class="py-name">iterator</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">==</tt><tt class="py-number">0</tt> </tt> <a name="L326"></a><tt class="py-lineno"> 326</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> </tt> <a name="L327"></a><tt class="py-lineno"> 327</tt> <tt class="py-line"> </tt> <a name="align_cmp"></a><div id="align_cmp-def"><a name="L328"></a><tt class="py-lineno"> 328</tt> <a class="py-toggle" href="#" id="align_cmp-toggle" onclick="return toggle('align_cmp');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="Bio.AlignIO-module.html#align_cmp">align_cmp</a><tt class="py-op">(</tt><tt class="py-param">align1</tt><tt class="py-op">,</tt> <tt class="py-param">align2</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt> </div><div id="align_cmp-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="align_cmp-expanded"><a name="L329"></a><tt class="py-lineno"> 329</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">align1</tt><tt class="py-op">.</tt><tt id="link-125" class="py-name" targets="Method Bio.Align.Generic.Alignment.get_alignment_length()=Bio.Align.Generic.Alignment-class.html#get_alignment_length"><a title="Bio.Align.Generic.Alignment.get_alignment_length" class="py-name" href="#" onclick="return doclink('link-125', 'get_alignment_length', 'link-125');">get_alignment_length</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op"><></tt> <tt class="py-name">align2</tt><tt class="py-op">.</tt><tt id="link-126" class="py-name"><a title="Bio.Align.Generic.Alignment.get_alignment_length" class="py-name" href="#" onclick="return doclink('link-126', 'get_alignment_length', 'link-125');">get_alignment_length</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt> <a name="L330"></a><tt class="py-lineno"> 330</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-127" class="py-name" targets="Variable Bio.EUtils.POM.False=Bio.EUtils.POM-module.html#False"><a title="Bio.EUtils.POM.False" class="py-name" href="#" onclick="return doclink('link-127', 'False', 'link-127');">False</a></tt> </tt> <a name="L331"></a><tt class="py-lineno"> 331</tt> <tt class="py-line"> <tt class="py-name">recs1</tt> <tt class="py-op">=</tt> <tt class="py-name">align1</tt><tt class="py-op">.</tt><tt id="link-128" class="py-name"><a title="Bio.Align.Generic.Alignment.get_all_seqs" class="py-name" href="#" onclick="return doclink('link-128', 'get_all_seqs', 'link-62');">get_all_seqs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt> <a name="L332"></a><tt class="py-lineno"> 332</tt> <tt class="py-line"> <tt class="py-name">recs2</tt> <tt class="py-op">=</tt> <tt class="py-name">align2</tt><tt class="py-op">.</tt><tt id="link-129" class="py-name"><a title="Bio.Align.Generic.Alignment.get_all_seqs" class="py-name" href="#" onclick="return doclink('link-129', 'get_all_seqs', 'link-62');">get_all_seqs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt> <a name="L333"></a><tt class="py-lineno"> 333</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">recs1</tt><tt class="py-op">)</tt> <tt class="py-op"><></tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">recs2</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt> <a name="L334"></a><tt class="py-lineno"> 334</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-130" class="py-name"><a title="Bio.EUtils.POM.False" class="py-name" href="#" onclick="return doclink('link-130', 'False', 'link-127');">False</a></tt> </tt> <a name="L335"></a><tt class="py-lineno"> 335</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">r1</tt><tt class="py-op">,</tt> <tt class="py-name">r2</tt> <tt class="py-keyword">in</tt> <tt class="py-name">zip</tt><tt class="py-op">(</tt><tt class="py-name">recs1</tt><tt class="py-op">,</tt> <tt class="py-name">recs2</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt> <a name="L336"></a><tt class="py-lineno"> 336</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">r1</tt><tt class="py-op">.</tt><tt id="link-131" class="py-name" targets="Method Bio.GFF.Feature.seq()=Bio.GFF.Feature-class.html#seq,Method Bio.GFF.FeatureAggregate.seq()=Bio.GFF.FeatureAggregate-class.html#seq,Variable BioSQL.BioSeq.DBSeqRecord.seq=BioSQL.BioSeq.DBSeqRecord-class.html#seq"><a title="Bio.GFF.Feature.seq Bio.GFF.FeatureAggregate.seq BioSQL.BioSeq.DBSeqRecord.seq" class="py-name" href="#" onclick="return doclink('link-131', 'seq', 'link-131');">seq</a></tt><tt class="py-op">.</tt><tt id="link-132" class="py-name" targets="Method Bio.Crystal.Crystal.tostring()=Bio.Crystal.Crystal-class.html#tostring,Method Bio.EUtils.POM.ElementNode.tostring()=Bio.EUtils.POM.ElementNode-class.html#tostring,Method Bio.Prosite.Pattern.Prosite.tostring()=Bio.Prosite.Pattern.Prosite-class.html#tostring,Method Bio.Seq.MutableSeq.tostring()=Bio.Seq.MutableSeq-class.html#tostring,Method Bio.Seq.Seq.tostring()=Bio.Seq.Seq-class.html#tostring,Method BioSQL.BioSeq.DBSeq.tostring()=BioSQL.BioSeq.DBSeq-class.html#tostring"><a title="Bio.Crystal.Crystal.tostring Bio.EUtils.POM.ElementNode.tostring Bio.Prosite.Pattern.Prosite.tostring Bio.Seq.MutableSeq.tostring Bio.Seq.Seq.tostring BioSQL.BioSeq.DBSeq.tostring" class="py-name" href="#" onclick="return doclink('link-132', 'tostring', 'link-132');">tostring</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op"><></tt> <tt class="py-name">r2</tt><tt class="py-op">.</tt><tt id="link-133" class="py-name"><a title="Bio.GFF.Feature.seq Bio.GFF.FeatureAggregate.seq BioSQL.BioSeq.DBSeqRecord.seq" class="py-name" href="#" onclick="return doclink('link-133', 'seq', 'link-131');">seq</a></tt><tt class="py-op">.</tt><tt id="link-134" class="py-name"><a title="Bio.Crystal.Crystal.tostring Bio.EUtils.POM.ElementNode.tostring Bio.Prosite.Pattern.Prosite.tostring Bio.Seq.MutableSeq.tostring Bio.Seq.Seq.tostring BioSQL.BioSeq.DBSeq.tostring" class="py-name" href="#" onclick="return doclink('link-134', 'tostring', 'link-132');">tostring</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt> <a name="L337"></a><tt class="py-lineno"> 337</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-135" class="py-name"><a title="Bio.EUtils.POM.False" class="py-name" href="#" onclick="return doclink('link-135', 'False', 'link-127');">False</a></tt> </tt> <a name="L338"></a><tt class="py-lineno"> 338</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-136" class="py-name" targets="Variable Bio.EUtils.POM.True=Bio.EUtils.POM-module.html#True"><a title="Bio.EUtils.POM.True" class="py-name" href="#" onclick="return doclink('link-136', 'True', 'link-136');">True</a></tt> </tt> </div><a name="L339"></a><tt class="py-lineno"> 339</tt> <tt class="py-line"> </tt> <a name="L340"></a><tt class="py-lineno"> 340</tt> <tt class="py-line"> <tt class="py-comment"># Fasta file with unusual layout, from here:</tt> </tt> <a name="L341"></a><tt class="py-lineno"> 341</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-comment"># http://virgil.ruc.dk/kurser/Sekvens/Treedraw.htm</tt> </tt> <a name="L342"></a><tt class="py-lineno"> 342</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-name">faa_example</tt> <tt class="py-op">=</tt> \ </tt> <a name="L343"></a><tt class="py-lineno"> 343</tt> <tt class="py-line"><tt class="py-string">""">V_Harveyi_PATH</tt> </tt> <a name="L344"></a><tt class="py-lineno"> 344</tt> <tt class="py-line"><tt class="py-string">mknwikvava aialsaatvq aatevkvgms gryfpftfvk qdklqgfevd mwdeigkrnd</tt> </tt> <a name="L345"></a><tt class="py-lineno"> 345</tt> <tt class="py-line"><tt class="py-string">ykieyvtanf sglfglletg ridtisnqit mtdarkakyl fadpyvvdga qitvrkgnds</tt> </tt> <a name="L346"></a><tt class="py-lineno"> 346</tt> <tt class="py-line"><tt class="py-string">iqgvedlagk tvavnlgsnf eqllrdydkd gkiniktydt giehdvalgr adafimdrls</tt> </tt> <a name="L347"></a><tt class="py-lineno"> 347</tt> <tt class="py-line"><tt class="py-string">alelikktgl plqlagepfe tiqnawpfvd nekgrklqae vnkalaemra dgtvekisvk</tt> </tt> <a name="L348"></a><tt class="py-lineno"> 348</tt> <tt class="py-line"><tt class="py-string">wfgaditk</tt> </tt> <a name="L349"></a><tt class="py-lineno"> 349</tt> <tt class="py-line"><tt class="py-string">>B_subtilis_YXEM</tt> </tt> <a name="L350"></a><tt class="py-lineno"> 350</tt> <tt class="py-line"><tt class="py-string">mkmkkwtvlv vaallavlsa cgngnssske ddnvlhvgat gqsypfayke ngkltgfdve</tt> </tt> <a name="L351"></a><tt class="py-lineno"> 351</tt> <tt class="py-line"><tt class="py-string">vmeavakkid mkldwkllef sglmgelqtg kldtisnqva vtderketyn ftkpyayagt</tt> </tt> <a name="L352"></a><tt class="py-lineno"> 352</tt> <tt class="py-line"><tt class="py-string">qivvkkdntd iksvddlkgk tvaavlgsnh aknleskdpd kkiniktyet qegtlkdvay</tt> </tt> <a name="L353"></a><tt class="py-lineno"> 353</tt> <tt class="py-line"><tt class="py-string">grvdayvnsr tvliaqikkt glplklagdp ivyeqvafpf akddahdklr kkvnkaldel</tt> </tt> <a name="L354"></a><tt class="py-lineno"> 354</tt> <tt class="py-line"><tt class="py-string">rkdgtlkkls ekyfneditv eqkh</tt> </tt> <a name="L355"></a><tt class="py-lineno"> 355</tt> <tt class="py-line"><tt class="py-string">>FLIY_ECOLI</tt> </tt> <a name="L356"></a><tt class="py-lineno"> 356</tt> <tt class="py-line"><tt class="py-string">mklahlgrqa lmgvmavalv agmsvksfad egllnkvker gtllvglegt yppfsfqgdd</tt> </tt> <a name="L357"></a><tt class="py-lineno"> 357</tt> <tt class="py-line"><tt class="py-string">gkltgfevef aqqlakhlgv easlkptkwd gmlasldskr idvvinqvti sderkkkydf</tt> </tt> <a name="L358"></a><tt class="py-lineno"> 358</tt> <tt class="py-line"><tt class="py-string">stpytisgiq alvkkgnegt iktaddlkgk kvgvglgtny eewlrqnvqg vdvrtydddp</tt> </tt> <a name="L359"></a><tt class="py-lineno"> 359</tt> <tt class="py-line"><tt class="py-string">tkyqdlrvgr idailvdrla aldlvkktnd tlavtgeafs rqesgvalrk gnedllkavn</tt> </tt> <a name="L360"></a><tt class="py-lineno"> 360</tt> <tt class="py-line"><tt class="py-string">daiaemqkdg tlqalsekwf gadvtk</tt> </tt> <a name="L361"></a><tt class="py-lineno"> 361</tt> <tt class="py-line"><tt class="py-string">>Deinococcus_radiodurans</tt> </tt> <a name="L362"></a><tt class="py-lineno"> 362</tt> <tt class="py-line"><tt class="py-string">mkksllslkl sgllvpsvla lslsacssps stlnqgtlki amegtyppft skneqgelvg</tt> </tt> <a name="L363"></a><tt class="py-lineno"> 363</tt> <tt class="py-line"><tt class="py-string">fdvdiakava qklnlkpefv ltewsgilag lqankydviv nqvgitperq nsigfsqpya</tt> </tt> <a name="L364"></a><tt class="py-lineno"> 364</tt> <tt class="py-line"><tt class="py-string">ysrpeiivak nntfnpqsla dlkgkrvgst lgsnyekqli dtgdikivty pgapeiladl</tt> </tt> <a name="L365"></a><tt class="py-lineno"> 365</tt> <tt class="py-line"><tt class="py-string">vagridaayn drlvvnyiin dqklpvrgag qigdaapvgi alkkgnsalk dqidkaltem</tt> </tt> <a name="L366"></a><tt class="py-lineno"> 366</tt> <tt class="py-line"><tt class="py-string">rsdgtfekis qkwfgqdvgq p</tt> </tt> <a name="L367"></a><tt class="py-lineno"> 367</tt> <tt class="py-line"><tt class="py-string">>B_subtilis_GlnH_homo_YCKK</tt> </tt> <a name="L368"></a><tt class="py-lineno"> 368</tt> <tt class="py-line"><tt class="py-string">mkkallalfm vvsiaalaac gagndnqskd nakdgdlwas ikkkgvltvg tegtyepfty</tt> </tt> <a name="L369"></a><tt class="py-lineno"> 369</tt> <tt class="py-line"><tt class="py-string">hdkdtdkltg ydveviteva krlglkvdfk etqwgsmfag lnskrfdvva nqvgktdred</tt> </tt> <a name="L370"></a><tt class="py-lineno"> 370</tt> <tt class="py-line"><tt class="py-string">kydfsdkytt sravvvtkkd nndikseadv kgktsaqslt snynklatna gakvegvegm</tt> </tt> <a name="L371"></a><tt class="py-lineno"> 371</tt> <tt class="py-line"><tt class="py-string">aqalqmiqqa rvdmtyndkl avlnylktsg nknvkiafet gepqstyftf rkgsgevvdq</tt> </tt> <a name="L372"></a><tt class="py-lineno"> 372</tt> <tt class="py-line"><tt class="py-string">vnkalkemke dgtlskiskk wfgedvsk</tt> </tt> <a name="L373"></a><tt class="py-lineno"> 373</tt> <tt class="py-line"><tt class="py-string">>YA80_HAEIN</tt> </tt> <a name="L374"></a><tt class="py-lineno"> 374</tt> <tt class="py-line"><tt class="py-string">mkkllfttal ltgaiafstf shageiadrv ektktllvgt egtyapftfh dksgkltgfd</tt> </tt> <a name="L375"></a><tt class="py-lineno"> 375</tt> <tt class="py-line"><tt class="py-string">vevirkvaek lglkvefket qwdamyagln akrfdvianq tnpsperlkk ysfttpynys</tt> </tt> <a name="L376"></a><tt class="py-lineno"> 376</tt> <tt class="py-line"><tt class="py-string">ggvivtkssd nsiksfedlk grksaqsats nwgkdakaag aqilvvdgla qslelikqgr</tt> </tt> <a name="L377"></a><tt class="py-lineno"> 377</tt> <tt class="py-line"><tt class="py-string">aeatindkla vldyfkqhpn sglkiaydrg dktptafafl qgedalitkf nqvlealrqd</tt> </tt> <a name="L378"></a><tt class="py-lineno"> 378</tt> <tt class="py-line"><tt class="py-string">gtlkqisiew fgyditq</tt> </tt> <a name="L379"></a><tt class="py-lineno"> 379</tt> <tt class="py-line"><tt class="py-string">>E_coli_GlnH</tt> </tt> <a name="L380"></a><tt class="py-lineno"> 380</tt> <tt class="py-line"><tt class="py-string">mksvlkvsla altlafavss haadkklvva tdtafvpfef kqgdkyvgfd vdlwaaiake</tt> </tt> <a name="L381"></a><tt class="py-lineno"> 381</tt> <tt class="py-line"><tt class="py-string">lkldyelkpm dfsgiipalq tknvdlalag ititderkka idfsdgyyks gllvmvkann</tt> </tt> <a name="L382"></a><tt class="py-lineno"> 382</tt> <tt class="py-line"><tt class="py-string">ndvksvkdld gkvvavksgt gsvdyakani ktkdlrqfpn idnaymelgt nradavlhdt</tt> </tt> <a name="L383"></a><tt class="py-lineno"> 383</tt> <tt class="py-line"><tt class="py-string">pnilyfikta gngqfkavgd sleaqqygia fpkgsdelrd kvngalktlr engtyneiyk</tt> </tt> <a name="L384"></a><tt class="py-lineno"> 384</tt> <tt class="py-line"><tt class="py-string">kwfgtepk</tt> </tt> <a name="L385"></a><tt class="py-lineno"> 385</tt> <tt class="py-line"><tt class="py-string">>HISJ_E_COLI</tt> </tt> <a name="L386"></a><tt class="py-lineno"> 386</tt> <tt class="py-line"><tt class="py-string">mkklvlslsl vlafssataa faaipqniri gtdptyapfe sknsqgelvg fdidlakelc</tt> </tt> <a name="L387"></a><tt class="py-lineno"> 387</tt> <tt class="py-line"><tt class="py-string">krintqctfv enpldalips lkakkidaim sslsitekrq qeiaftdkly aadsrlvvak</tt> </tt> <a name="L388"></a><tt class="py-lineno"> 388</tt> <tt class="py-line"><tt class="py-string">nsdiqptves lkgkrvgvlq gttqetfgne hwapkgieiv syqgqdniys dltagridaa</tt> </tt> <a name="L389"></a><tt class="py-lineno"> 389</tt> <tt class="py-line"><tt class="py-string">fqdevaaseg flkqpvgkdy kfggpsvkde klfgvgtgmg lrkednelre alnkafaemr</tt> </tt> <a name="L390"></a><tt class="py-lineno"> 390</tt> <tt class="py-line"><tt class="py-string">adgtyeklak kyfdfdvygg"""</tt> </tt> <a name="L391"></a><tt class="py-lineno"> 391</tt> <tt class="py-line"> </tt> <a name="L392"></a><tt class="py-lineno"> 392</tt> <tt class="py-line"> <tt class="py-comment"># This alignment was created from the fasta example given above</tt> </tt> <a name="L393"></a><tt class="py-lineno"> 393</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-name">aln_example</tt> <tt class="py-op">=</tt> \ </tt> <a name="L394"></a><tt class="py-lineno"> 394</tt> <tt class="py-line"><tt class="py-string">"""CLUSTAL X (1.83) multiple sequence alignment</tt> </tt> <a name="L395"></a><tt class="py-lineno"> 395</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L396"></a><tt class="py-lineno"> 396</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L397"></a><tt class="py-lineno"> 397</tt> <tt class="py-line"><tt class="py-string">V_Harveyi_PATH --MKNWIKVAVAAIA--LSAA------------------TVQAATEVKVG</tt> </tt> <a name="L398"></a><tt class="py-lineno"> 398</tt> <tt class="py-line"><tt class="py-string">B_subtilis_YXEM MKMKKWTVLVVAALLAVLSACG------------NGNSSSKEDDNVLHVG</tt> </tt> <a name="L399"></a><tt class="py-lineno"> 399</tt> <tt class="py-line"><tt class="py-string">B_subtilis_GlnH_homo_YCKK MKKALLALFMVVSIAALAACGAGNDNQSKDNAKDGDLWASIKKKGVLTVG</tt> </tt> <a name="L400"></a><tt class="py-lineno"> 400</tt> <tt class="py-line"><tt class="py-string">YA80_HAEIN MKKLLFTTALLTGAIAFSTF-----------SHAGEIADRVEKTKTLLVG</tt> </tt> <a name="L401"></a><tt class="py-lineno"> 401</tt> <tt class="py-line"><tt class="py-string">FLIY_ECOLI MKLAHLGRQALMGVMAVALVAG---MSVKSFADEG-LLNKVKERGTLLVG</tt> </tt> <a name="L402"></a><tt class="py-lineno"> 402</tt> <tt class="py-line"><tt class="py-string">E_coli_GlnH --MKSVLKVSLAALTLAFAVS------------------SHAADKKLVVA</tt> </tt> <a name="L403"></a><tt class="py-lineno"> 403</tt> <tt class="py-line"><tt class="py-string">Deinococcus_radiodurans -MKKSLLSLKLSGLLVPSVLALS--------LSACSSPSSTLNQGTLKIA</tt> </tt> <a name="L404"></a><tt class="py-lineno"> 404</tt> <tt class="py-line"><tt class="py-string">HISJ_E_COLI MKKLVLSLSLVLAFSSATAAF-------------------AAIPQNIRIG</tt> </tt> <a name="L405"></a><tt class="py-lineno"> 405</tt> <tt class="py-line"><tt class="py-string"> : . : :.</tt> </tt> <a name="L406"></a><tt class="py-lineno"> 406</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L407"></a><tt class="py-lineno"> 407</tt> <tt class="py-line"><tt class="py-string">V_Harveyi_PATH MSGRYFPFTFVKQ--DKLQGFEVDMWDEIGKRNDYKIEYVTANFSGLFGL</tt> </tt> <a name="L408"></a><tt class="py-lineno"> 408</tt> <tt class="py-line"><tt class="py-string">B_subtilis_YXEM ATGQSYPFAYKEN--GKLTGFDVEVMEAVAKKIDMKLDWKLLEFSGLMGE</tt> </tt> <a name="L409"></a><tt class="py-lineno"> 409</tt> <tt class="py-line"><tt class="py-string">B_subtilis_GlnH_homo_YCKK TEGTYEPFTYHDKDTDKLTGYDVEVITEVAKRLGLKVDFKETQWGSMFAG</tt> </tt> <a name="L410"></a><tt class="py-lineno"> 410</tt> <tt class="py-line"><tt class="py-string">YA80_HAEIN TEGTYAPFTFHDK-SGKLTGFDVEVIRKVAEKLGLKVEFKETQWDAMYAG</tt> </tt> <a name="L411"></a><tt class="py-lineno"> 411</tt> <tt class="py-line"><tt class="py-string">FLIY_ECOLI LEGTYPPFSFQGD-DGKLTGFEVEFAQQLAKHLGVEASLKPTKWDGMLAS</tt> </tt> <a name="L412"></a><tt class="py-lineno"> 412</tt> <tt class="py-line"><tt class="py-string">E_coli_GlnH TDTAFVPFEFKQG--DKYVGFDVDLWAAIAKELKLDYELKPMDFSGIIPA</tt> </tt> <a name="L413"></a><tt class="py-lineno"> 413</tt> <tt class="py-line"><tt class="py-string">Deinococcus_radiodurans MEGTYPPFTSKNE-QGELVGFDVDIAKAVAQKLNLKPEFVLTEWSGILAG</tt> </tt> <a name="L414"></a><tt class="py-lineno"> 414</tt> <tt class="py-line"><tt class="py-string">HISJ_E_COLI TDPTYAPFESKNS-QGELVGFDIDLAKELCKRINTQCTFVENPLDALIPS</tt> </tt> <a name="L415"></a><tt class="py-lineno"> 415</tt> <tt class="py-line"><tt class="py-string"> ** .: *::::. : :. . ..: </tt> </tt> <a name="L416"></a><tt class="py-lineno"> 416</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L417"></a><tt class="py-lineno"> 417</tt> <tt class="py-line"><tt class="py-string">V_Harveyi_PATH LETGRIDTISNQITMTDARKAKYLFADPYVVDG-AQITVRKGNDSIQGVE</tt> </tt> <a name="L418"></a><tt class="py-lineno"> 418</tt> <tt class="py-line"><tt class="py-string">B_subtilis_YXEM LQTGKLDTISNQVAVTDERKETYNFTKPYAYAG-TQIVVKKDNTDIKSVD</tt> </tt> <a name="L419"></a><tt class="py-lineno"> 419</tt> <tt class="py-line"><tt class="py-string">B_subtilis_GlnH_homo_YCKK LNSKRFDVVANQVG-KTDREDKYDFSDKYTTSR-AVVVTKKDNNDIKSEA</tt> </tt> <a name="L420"></a><tt class="py-lineno"> 420</tt> <tt class="py-line"><tt class="py-string">YA80_HAEIN LNAKRFDVIANQTNPSPERLKKYSFTTPYNYSG-GVIVTKSSDNSIKSFE</tt> </tt> <a name="L421"></a><tt class="py-lineno"> 421</tt> <tt class="py-line"><tt class="py-string">FLIY_ECOLI LDSKRIDVVINQVTISDERKKKYDFSTPYTISGIQALVKKGNEGTIKTAD</tt> </tt> <a name="L422"></a><tt class="py-lineno"> 422</tt> <tt class="py-line"><tt class="py-string">E_coli_GlnH LQTKNVDLALAGITITDERKKAIDFSDGYYKSG-LLVMVKANNNDVKSVK</tt> </tt> <a name="L423"></a><tt class="py-lineno"> 423</tt> <tt class="py-line"><tt class="py-string">Deinococcus_radiodurans LQANKYDVIVNQVGITPERQNSIGFSQPYAYSRPEIIVAKNNTFNPQSLA</tt> </tt> <a name="L424"></a><tt class="py-lineno"> 424</tt> <tt class="py-line"><tt class="py-string">HISJ_E_COLI LKAKKIDAIMSSLSITEKRQQEIAFTDKLYAADSRLVVAKNSDIQP-TVE</tt> </tt> <a name="L425"></a><tt class="py-lineno"> 425</tt> <tt class="py-line"><tt class="py-string"> *.: . * . * *: : : . </tt> </tt> <a name="L426"></a><tt class="py-lineno"> 426</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L427"></a><tt class="py-lineno"> 427</tt> <tt class="py-line"><tt class="py-string">V_Harveyi_PATH DLAGKTVAVNLGSNFEQLLRDYDKDGKINIKTYDT--GIEHDVALGRADA</tt> </tt> <a name="L428"></a><tt class="py-lineno"> 428</tt> <tt class="py-line"><tt class="py-string">B_subtilis_YXEM DLKGKTVAAVLGSNHAKNLESKDPDKKINIKTYETQEGTLKDVAYGRVDA</tt> </tt> <a name="L429"></a><tt class="py-lineno"> 429</tt> <tt class="py-line"><tt class="py-string">B_subtilis_GlnH_homo_YCKK DVKGKTSAQSLTSNYNKLATN----AGAKVEGVEGMAQALQMIQQARVDM</tt> </tt> <a name="L430"></a><tt class="py-lineno"> 430</tt> <tt class="py-line"><tt class="py-string">YA80_HAEIN DLKGRKSAQSATSNWGKDAKA----AGAQILVVDGLAQSLELIKQGRAEA</tt> </tt> <a name="L431"></a><tt class="py-lineno"> 431</tt> <tt class="py-line"><tt class="py-string">FLIY_ECOLI DLKGKKVGVGLGTNYEEWLRQNV--QGVDVRTYDDDPTKYQDLRVGRIDA</tt> </tt> <a name="L432"></a><tt class="py-lineno"> 432</tt> <tt class="py-line"><tt class="py-string">E_coli_GlnH DLDGKVVAVKSGTGSVDYAKAN--IKTKDLRQFPNIDNAYMELGTNRADA</tt> </tt> <a name="L433"></a><tt class="py-lineno"> 433</tt> <tt class="py-line"><tt class="py-string">Deinococcus_radiodurans DLKGKRVGSTLGSNYEKQLIDTG---DIKIVTYPGAPEILADLVAGRIDA</tt> </tt> <a name="L434"></a><tt class="py-lineno"> 434</tt> <tt class="py-line"><tt class="py-string">HISJ_E_COLI SLKGKRVGVLQGTTQETFGNEHWAPKGIEIVSYQGQDNIYSDLTAGRIDA</tt> </tt> <a name="L435"></a><tt class="py-lineno"> 435</tt> <tt class="py-line"><tt class="py-string"> .: *: . : .: : * : </tt> </tt> <a name="L436"></a><tt class="py-lineno"> 436</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L437"></a><tt class="py-lineno"> 437</tt> <tt class="py-line"><tt class="py-string">V_Harveyi_PATH FIMDRLSALE-LIKKT-GLPLQLAGEPFETI-----QNAWPFVDNEKGRK</tt> </tt> <a name="L438"></a><tt class="py-lineno"> 438</tt> <tt class="py-line"><tt class="py-string">B_subtilis_YXEM YVNSRTVLIA-QIKKT-GLPLKLAGDPIVYE-----QVAFPFAKDDAHDK</tt> </tt> <a name="L439"></a><tt class="py-lineno"> 439</tt> <tt class="py-line"><tt class="py-string">B_subtilis_GlnH_homo_YCKK TYNDKLAVLN-YLKTSGNKNVKIAFETGEPQ-----STYFTFRKGS--GE</tt> </tt> <a name="L440"></a><tt class="py-lineno"> 440</tt> <tt class="py-line"><tt class="py-string">YA80_HAEIN TINDKLAVLD-YFKQHPNSGLKIAYDRGDKT-----PTAFAFLQGE--DA</tt> </tt> <a name="L441"></a><tt class="py-lineno"> 441</tt> <tt class="py-line"><tt class="py-string">FLIY_ECOLI ILVDRLAALD-LVKKT-NDTLAVTGEAFSRQ-----ESGVALRKGN--ED</tt> </tt> <a name="L442"></a><tt class="py-lineno"> 442</tt> <tt class="py-line"><tt class="py-string">E_coli_GlnH VLHDTPNILY-FIKTAGNGQFKAVGDSLEAQ-----QYGIAFPKGS--DE</tt> </tt> <a name="L443"></a><tt class="py-lineno"> 443</tt> <tt class="py-line"><tt class="py-string">Deinococcus_radiodurans AYNDRLVVNY-IINDQ-KLPVRGAGQIGDAA-----PVGIALKKGN--SA</tt> </tt> <a name="L444"></a><tt class="py-lineno"> 444</tt> <tt class="py-line"><tt class="py-string">HISJ_E_COLI AFQDEVAASEGFLKQPVGKDYKFGGPSVKDEKLFGVGTGMGLRKED--NE</tt> </tt> <a name="L445"></a><tt class="py-lineno"> 445</tt> <tt class="py-line"><tt class="py-string"> . .: : . . </tt> </tt> <a name="L446"></a><tt class="py-lineno"> 446</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L447"></a><tt class="py-lineno"> 447</tt> <tt class="py-line"><tt class="py-string">V_Harveyi_PATH LQAEVNKALAEMRADGTVEKISVKWFGADITK----</tt> </tt> <a name="L448"></a><tt class="py-lineno"> 448</tt> <tt class="py-line"><tt class="py-string">B_subtilis_YXEM LRKKVNKALDELRKDGTLKKLSEKYFNEDITVEQKH</tt> </tt> <a name="L449"></a><tt class="py-lineno"> 449</tt> <tt class="py-line"><tt class="py-string">B_subtilis_GlnH_homo_YCKK VVDQVNKALKEMKEDGTLSKISKKWFGEDVSK----</tt> </tt> <a name="L450"></a><tt class="py-lineno"> 450</tt> <tt class="py-line"><tt class="py-string">YA80_HAEIN LITKFNQVLEALRQDGTLKQISIEWFGYDITQ----</tt> </tt> <a name="L451"></a><tt class="py-lineno"> 451</tt> <tt class="py-line"><tt class="py-string">FLIY_ECOLI LLKAVNDAIAEMQKDGTLQALSEKWFGADVTK----</tt> </tt> <a name="L452"></a><tt class="py-lineno"> 452</tt> <tt class="py-line"><tt class="py-string">E_coli_GlnH LRDKVNGALKTLRENGTYNEIYKKWFGTEPK-----</tt> </tt> <a name="L453"></a><tt class="py-lineno"> 453</tt> <tt class="py-line"><tt class="py-string">Deinococcus_radiodurans LKDQIDKALTEMRSDGTFEKISQKWFGQDVGQP---</tt> </tt> <a name="L454"></a><tt class="py-lineno"> 454</tt> <tt class="py-line"><tt class="py-string">HISJ_E_COLI LREALNKAFAEMRADGTYEKLAKKYFDFDVYGG---</tt> </tt> <a name="L455"></a><tt class="py-lineno"> 455</tt> <tt class="py-line"><tt class="py-string"> : .: .: :: :** . : ::*. : </tt> </tt> <a name="L456"></a><tt class="py-lineno"> 456</tt> <tt class="py-line"><tt class="py-string">"""</tt> </tt> <a name="L457"></a><tt class="py-lineno"> 457</tt> <tt class="py-line"> </tt> <a name="L458"></a><tt class="py-lineno"> 458</tt> <tt class="py-line"> <tt class="py-comment"># This is the clustal example (above) but output in phylip format,</tt> </tt> <a name="L459"></a><tt class="py-lineno"> 459</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-comment"># with truncated names. Note there is an ambiguity here: two</tt> </tt> <a name="L460"></a><tt class="py-lineno"> 460</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-comment"># different sequences both called "B_subtilis", originally</tt> </tt> <a name="L461"></a><tt class="py-lineno"> 461</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-comment"># "B_subtilis_YXEM" and "B_subtilis_GlnH_homo_YCKK"</tt> </tt> <a name="L462"></a><tt class="py-lineno"> 462</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-name">phy_example</tt> <tt class="py-op">=</tt> \ </tt> <a name="L463"></a><tt class="py-lineno"> 463</tt> <tt class="py-line"><tt class="py-string">""" 8 286</tt> </tt> <a name="L464"></a><tt class="py-lineno"> 464</tt> <tt class="py-line"><tt class="py-string">V_Harveyi_ --MKNWIKVA VAAIA--LSA A--------- ---------T VQAATEVKVG </tt> </tt> <a name="L465"></a><tt class="py-lineno"> 465</tt> <tt class="py-line"><tt class="py-string">B_subtilis MKMKKWTVLV VAALLAVLSA CG-------- ----NGNSSS KEDDNVLHVG </tt> </tt> <a name="L466"></a><tt class="py-lineno"> 466</tt> <tt class="py-line"><tt class="py-string">B_subtilis MKKALLALFM VVSIAALAAC GAGNDNQSKD NAKDGDLWAS IKKKGVLTVG </tt> </tt> <a name="L467"></a><tt class="py-lineno"> 467</tt> <tt class="py-line"><tt class="py-string">YA80_HAEIN MKKLLFTTAL LTGAIAFSTF ---------- -SHAGEIADR VEKTKTLLVG </tt> </tt> <a name="L468"></a><tt class="py-lineno"> 468</tt> <tt class="py-line"><tt class="py-string">FLIY_ECOLI MKLAHLGRQA LMGVMAVALV AG---MSVKS FADEG-LLNK VKERGTLLVG </tt> </tt> <a name="L469"></a><tt class="py-lineno"> 469</tt> <tt class="py-line"><tt class="py-string">E_coli_Gln --MKSVLKVS LAALTLAFAV S--------- ---------S HAADKKLVVA </tt> </tt> <a name="L470"></a><tt class="py-lineno"> 470</tt> <tt class="py-line"><tt class="py-string">Deinococcu -MKKSLLSLK LSGLLVPSVL ALS------- -LSACSSPSS TLNQGTLKIA </tt> </tt> <a name="L471"></a><tt class="py-lineno"> 471</tt> <tt class="py-line"><tt class="py-string">HISJ_E_COL MKKLVLSLSL VLAFSSATAA F--------- ---------- AAIPQNIRIG </tt> </tt> <a name="L472"></a><tt class="py-lineno"> 472</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L473"></a><tt class="py-lineno"> 473</tt> <tt class="py-line"><tt class="py-string"> MSGRYFPFTF VKQ--DKLQG FEVDMWDEIG KRNDYKIEYV TANFSGLFGL </tt> </tt> <a name="L474"></a><tt class="py-lineno"> 474</tt> <tt class="py-line"><tt class="py-string"> ATGQSYPFAY KEN--GKLTG FDVEVMEAVA KKIDMKLDWK LLEFSGLMGE </tt> </tt> <a name="L475"></a><tt class="py-lineno"> 475</tt> <tt class="py-line"><tt class="py-string"> TEGTYEPFTY HDKDTDKLTG YDVEVITEVA KRLGLKVDFK ETQWGSMFAG </tt> </tt> <a name="L476"></a><tt class="py-lineno"> 476</tt> <tt class="py-line"><tt class="py-string"> TEGTYAPFTF HDK-SGKLTG FDVEVIRKVA EKLGLKVEFK ETQWDAMYAG </tt> </tt> <a name="L477"></a><tt class="py-lineno"> 477</tt> <tt class="py-line"><tt class="py-string"> LEGTYPPFSF QGD-DGKLTG FEVEFAQQLA KHLGVEASLK PTKWDGMLAS </tt> </tt> <a name="L478"></a><tt class="py-lineno"> 478</tt> <tt class="py-line"><tt class="py-string"> TDTAFVPFEF KQG--DKYVG FDVDLWAAIA KELKLDYELK PMDFSGIIPA </tt> </tt> <a name="L479"></a><tt class="py-lineno"> 479</tt> <tt class="py-line"><tt class="py-string"> MEGTYPPFTS KNE-QGELVG FDVDIAKAVA QKLNLKPEFV LTEWSGILAG </tt> </tt> <a name="L480"></a><tt class="py-lineno"> 480</tt> <tt class="py-line"><tt class="py-string"> TDPTYAPFES KNS-QGELVG FDIDLAKELC KRINTQCTFV ENPLDALIPS </tt> </tt> <a name="L481"></a><tt class="py-lineno"> 481</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L482"></a><tt class="py-lineno"> 482</tt> <tt class="py-line"><tt class="py-string"> LETGRIDTIS NQITMTDARK AKYLFADPYV VDG-AQITVR KGNDSIQGVE </tt> </tt> <a name="L483"></a><tt class="py-lineno"> 483</tt> <tt class="py-line"><tt class="py-string"> LQTGKLDTIS NQVAVTDERK ETYNFTKPYA YAG-TQIVVK KDNTDIKSVD </tt> </tt> <a name="L484"></a><tt class="py-lineno"> 484</tt> <tt class="py-line"><tt class="py-string"> LNSKRFDVVA NQVG-KTDRE DKYDFSDKYT TSR-AVVVTK KDNNDIKSEA </tt> </tt> <a name="L485"></a><tt class="py-lineno"> 485</tt> <tt class="py-line"><tt class="py-string"> LNAKRFDVIA NQTNPSPERL KKYSFTTPYN YSG-GVIVTK SSDNSIKSFE </tt> </tt> <a name="L486"></a><tt class="py-lineno"> 486</tt> <tt class="py-line"><tt class="py-string"> LDSKRIDVVI NQVTISDERK KKYDFSTPYT ISGIQALVKK GNEGTIKTAD </tt> </tt> <a name="L487"></a><tt class="py-lineno"> 487</tt> <tt class="py-line"><tt class="py-string"> LQTKNVDLAL AGITITDERK KAIDFSDGYY KSG-LLVMVK ANNNDVKSVK </tt> </tt> <a name="L488"></a><tt class="py-lineno"> 488</tt> <tt class="py-line"><tt class="py-string"> LQANKYDVIV NQVGITPERQ NSIGFSQPYA YSRPEIIVAK NNTFNPQSLA </tt> </tt> <a name="L489"></a><tt class="py-lineno"> 489</tt> <tt class="py-line"><tt class="py-string"> LKAKKIDAIM SSLSITEKRQ QEIAFTDKLY AADSRLVVAK NSDIQP-TVE </tt> </tt> <a name="L490"></a><tt class="py-lineno"> 490</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L491"></a><tt class="py-lineno"> 491</tt> <tt class="py-line"><tt class="py-string"> DLAGKTVAVN LGSNFEQLLR DYDKDGKINI KTYDT--GIE HDVALGRADA </tt> </tt> <a name="L492"></a><tt class="py-lineno"> 492</tt> <tt class="py-line"><tt class="py-string"> DLKGKTVAAV LGSNHAKNLE SKDPDKKINI KTYETQEGTL KDVAYGRVDA </tt> </tt> <a name="L493"></a><tt class="py-lineno"> 493</tt> <tt class="py-line"><tt class="py-string"> DVKGKTSAQS LTSNYNKLAT N----AGAKV EGVEGMAQAL QMIQQARVDM </tt> </tt> <a name="L494"></a><tt class="py-lineno"> 494</tt> <tt class="py-line"><tt class="py-string"> DLKGRKSAQS ATSNWGKDAK A----AGAQI LVVDGLAQSL ELIKQGRAEA </tt> </tt> <a name="L495"></a><tt class="py-lineno"> 495</tt> <tt class="py-line"><tt class="py-string"> DLKGKKVGVG LGTNYEEWLR QNV--QGVDV RTYDDDPTKY QDLRVGRIDA </tt> </tt> <a name="L496"></a><tt class="py-lineno"> 496</tt> <tt class="py-line"><tt class="py-string"> DLDGKVVAVK SGTGSVDYAK AN--IKTKDL RQFPNIDNAY MELGTNRADA </tt> </tt> <a name="L497"></a><tt class="py-lineno"> 497</tt> <tt class="py-line"><tt class="py-string"> DLKGKRVGST LGSNYEKQLI DTG---DIKI VTYPGAPEIL ADLVAGRIDA </tt> </tt> <a name="L498"></a><tt class="py-lineno"> 498</tt> <tt class="py-line"><tt class="py-string"> SLKGKRVGVL QGTTQETFGN EHWAPKGIEI VSYQGQDNIY SDLTAGRIDA </tt> </tt> <a name="L499"></a><tt class="py-lineno"> 499</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L500"></a><tt class="py-lineno"> 500</tt> <tt class="py-line"><tt class="py-string"> FIMDRLSALE -LIKKT-GLP LQLAGEPFET I-----QNAW PFVDNEKGRK </tt> </tt> <a name="L501"></a><tt class="py-lineno"> 501</tt> <tt class="py-line"><tt class="py-string"> YVNSRTVLIA -QIKKT-GLP LKLAGDPIVY E-----QVAF PFAKDDAHDK </tt> </tt> <a name="L502"></a><tt class="py-lineno"> 502</tt> <tt class="py-line"><tt class="py-string"> TYNDKLAVLN -YLKTSGNKN VKIAFETGEP Q-----STYF TFRKGS--GE </tt> </tt> <a name="L503"></a><tt class="py-lineno"> 503</tt> <tt class="py-line"><tt class="py-string"> TINDKLAVLD -YFKQHPNSG LKIAYDRGDK T-----PTAF AFLQGE--DA </tt> </tt> <a name="L504"></a><tt class="py-lineno"> 504</tt> <tt class="py-line"><tt class="py-string"> ILVDRLAALD -LVKKT-NDT LAVTGEAFSR Q-----ESGV ALRKGN--ED </tt> </tt> <a name="L505"></a><tt class="py-lineno"> 505</tt> <tt class="py-line"><tt class="py-string"> VLHDTPNILY -FIKTAGNGQ FKAVGDSLEA Q-----QYGI AFPKGS--DE </tt> </tt> <a name="L506"></a><tt class="py-lineno"> 506</tt> <tt class="py-line"><tt class="py-string"> AYNDRLVVNY -IINDQ-KLP VRGAGQIGDA A-----PVGI ALKKGN--SA </tt> </tt> <a name="L507"></a><tt class="py-lineno"> 507</tt> <tt class="py-line"><tt class="py-string"> AFQDEVAASE GFLKQPVGKD YKFGGPSVKD EKLFGVGTGM GLRKED--NE </tt> </tt> <a name="L508"></a><tt class="py-lineno"> 508</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L509"></a><tt class="py-lineno"> 509</tt> <tt class="py-line"><tt class="py-string"> LQAEVNKALA EMRADGTVEK ISVKWFGADI TK----</tt> </tt> <a name="L510"></a><tt class="py-lineno"> 510</tt> <tt class="py-line"><tt class="py-string"> LRKKVNKALD ELRKDGTLKK LSEKYFNEDI TVEQKH</tt> </tt> <a name="L511"></a><tt class="py-lineno"> 511</tt> <tt class="py-line"><tt class="py-string"> VVDQVNKALK EMKEDGTLSK ISKKWFGEDV SK----</tt> </tt> <a name="L512"></a><tt class="py-lineno"> 512</tt> <tt class="py-line"><tt class="py-string"> LITKFNQVLE ALRQDGTLKQ ISIEWFGYDI TQ----</tt> </tt> <a name="L513"></a><tt class="py-lineno"> 513</tt> <tt class="py-line"><tt class="py-string"> LLKAVNDAIA EMQKDGTLQA LSEKWFGADV TK----</tt> </tt> <a name="L514"></a><tt class="py-lineno"> 514</tt> <tt class="py-line"><tt class="py-string"> LRDKVNGALK TLRENGTYNE IYKKWFGTEP K-----</tt> </tt> <a name="L515"></a><tt class="py-lineno"> 515</tt> <tt class="py-line"><tt class="py-string"> LKDQIDKALT EMRSDGTFEK ISQKWFGQDV GQP---</tt> </tt> <a name="L516"></a><tt class="py-lineno"> 516</tt> <tt class="py-line"><tt class="py-string"> LREALNKAFA EMRADGTYEK LAKKYFDFDV YGG---</tt> </tt> <a name="L517"></a><tt class="py-lineno"> 517</tt> <tt class="py-line"><tt class="py-string">"""</tt> </tt> <a name="L518"></a><tt class="py-lineno"> 518</tt> <tt class="py-line"> <tt class="py-comment"># This is the clustal example (above) but output in phylip format,</tt> </tt> <a name="L519"></a><tt class="py-lineno"> 519</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-name">nxs_example</tt> <tt class="py-op">=</tt> \ </tt> <a name="L520"></a><tt class="py-lineno"> 520</tt> <tt class="py-line"><tt class="py-string">"""#NEXUS</tt> </tt> <a name="L521"></a><tt class="py-lineno"> 521</tt> <tt class="py-line"><tt class="py-string">BEGIN DATA;</tt> </tt> <a name="L522"></a><tt class="py-lineno"> 522</tt> <tt class="py-line"><tt class="py-string">dimensions ntax=8 nchar=286;</tt> </tt> <a name="L523"></a><tt class="py-lineno"> 523</tt> <tt class="py-line"><tt class="py-string">format missing=?</tt> </tt> <a name="L524"></a><tt class="py-lineno"> 524</tt> <tt class="py-line"><tt class="py-string">symbols="ABCDEFGHIKLMNPQRSTUVWXYZ"</tt> </tt> <a name="L525"></a><tt class="py-lineno"> 525</tt> <tt class="py-line"><tt class="py-string">interleave datatype=PROTEIN gap= -;</tt> </tt> <a name="L526"></a><tt class="py-lineno"> 526</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L527"></a><tt class="py-lineno"> 527</tt> <tt class="py-line"><tt class="py-string">matrix</tt> </tt> <a name="L528"></a><tt class="py-lineno"> 528</tt> <tt class="py-line"><tt class="py-string">V_Harveyi_PATH --MKNWIKVAVAAIA--LSAA------------------TVQAATEVKVG</tt> </tt> <a name="L529"></a><tt class="py-lineno"> 529</tt> <tt class="py-line"><tt class="py-string">B_subtilis_YXEM MKMKKWTVLVVAALLAVLSACG------------NGNSSSKEDDNVLHVG</tt> </tt> <a name="L530"></a><tt class="py-lineno"> 530</tt> <tt class="py-line"><tt class="py-string">B_subtilis_GlnH_homo_YCKK MKKALLALFMVVSIAALAACGAGNDNQSKDNAKDGDLWASIKKKGVLTVG</tt> </tt> <a name="L531"></a><tt class="py-lineno"> 531</tt> <tt class="py-line"><tt class="py-string">YA80_HAEIN MKKLLFTTALLTGAIAFSTF-----------SHAGEIADRVEKTKTLLVG</tt> </tt> <a name="L532"></a><tt class="py-lineno"> 532</tt> <tt class="py-line"><tt class="py-string">FLIY_ECOLI MKLAHLGRQALMGVMAVALVAG---MSVKSFADEG-LLNKVKERGTLLVG</tt> </tt> <a name="L533"></a><tt class="py-lineno"> 533</tt> <tt class="py-line"><tt class="py-string">E_coli_GlnH --MKSVLKVSLAALTLAFAVS------------------SHAADKKLVVA</tt> </tt> <a name="L534"></a><tt class="py-lineno"> 534</tt> <tt class="py-line"><tt class="py-string">Deinococcus_radiodurans -MKKSLLSLKLSGLLVPSVLALS--------LSACSSPSSTLNQGTLKIA</tt> </tt> <a name="L535"></a><tt class="py-lineno"> 535</tt> <tt class="py-line"><tt class="py-string">HISJ_E_COLI MKKLVLSLSLVLAFSSATAAF-------------------AAIPQNIRIG</tt> </tt> <a name="L536"></a><tt class="py-lineno"> 536</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L537"></a><tt class="py-lineno"> 537</tt> <tt class="py-line"><tt class="py-string">V_Harveyi_PATH MSGRYFPFTFVKQ--DKLQGFEVDMWDEIGKRNDYKIEYVTANFSGLFGL</tt> </tt> <a name="L538"></a><tt class="py-lineno"> 538</tt> <tt class="py-line"><tt class="py-string">B_subtilis_YXEM ATGQSYPFAYKEN--GKLTGFDVEVMEAVAKKIDMKLDWKLLEFSGLMGE</tt> </tt> <a name="L539"></a><tt class="py-lineno"> 539</tt> <tt class="py-line"><tt class="py-string">B_subtilis_GlnH_homo_YCKK TEGTYEPFTYHDKDTDKLTGYDVEVITEVAKRLGLKVDFKETQWGSMFAG</tt> </tt> <a name="L540"></a><tt class="py-lineno"> 540</tt> <tt class="py-line"><tt class="py-string">YA80_HAEIN TEGTYAPFTFHDK-SGKLTGFDVEVIRKVAEKLGLKVEFKETQWDAMYAG</tt> </tt> <a name="L541"></a><tt class="py-lineno"> 541</tt> <tt class="py-line"><tt class="py-string">FLIY_ECOLI LEGTYPPFSFQGD-DGKLTGFEVEFAQQLAKHLGVEASLKPTKWDGMLAS</tt> </tt> <a name="L542"></a><tt class="py-lineno"> 542</tt> <tt class="py-line"><tt class="py-string">E_coli_GlnH TDTAFVPFEFKQG--DKYVGFDVDLWAAIAKELKLDYELKPMDFSGIIPA</tt> </tt> <a name="L543"></a><tt class="py-lineno"> 543</tt> <tt class="py-line"><tt class="py-string">Deinococcus_radiodurans MEGTYPPFTSKNE-QGELVGFDVDIAKAVAQKLNLKPEFVLTEWSGILAG</tt> </tt> <a name="L544"></a><tt class="py-lineno"> 544</tt> <tt class="py-line"><tt class="py-string">HISJ_E_COLI TDPTYAPFESKNS-QGELVGFDIDLAKELCKRINTQCTFVENPLDALIPS</tt> </tt> <a name="L545"></a><tt class="py-lineno"> 545</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L546"></a><tt class="py-lineno"> 546</tt> <tt class="py-line"><tt class="py-string">V_Harveyi_PATH LETGRIDTISNQITMTDARKAKYLFADPYVVDG-AQITVRKGNDSIQGVE</tt> </tt> <a name="L547"></a><tt class="py-lineno"> 547</tt> <tt class="py-line"><tt class="py-string">B_subtilis_YXEM LQTGKLDTISNQVAVTDERKETYNFTKPYAYAG-TQIVVKKDNTDIKSVD</tt> </tt> <a name="L548"></a><tt class="py-lineno"> 548</tt> <tt class="py-line"><tt class="py-string">B_subtilis_GlnH_homo_YCKK LNSKRFDVVANQVG-KTDREDKYDFSDKYTTSR-AVVVTKKDNNDIKSEA</tt> </tt> <a name="L549"></a><tt class="py-lineno"> 549</tt> <tt class="py-line"><tt class="py-string">YA80_HAEIN LNAKRFDVIANQTNPSPERLKKYSFTTPYNYSG-GVIVTKSSDNSIKSFE</tt> </tt> <a name="L550"></a><tt class="py-lineno"> 550</tt> <tt class="py-line"><tt class="py-string">FLIY_ECOLI LDSKRIDVVINQVTISDERKKKYDFSTPYTISGIQALVKKGNEGTIKTAD</tt> </tt> <a name="L551"></a><tt class="py-lineno"> 551</tt> <tt class="py-line"><tt class="py-string">E_coli_GlnH LQTKNVDLALAGITITDERKKAIDFSDGYYKSG-LLVMVKANNNDVKSVK</tt> </tt> <a name="L552"></a><tt class="py-lineno"> 552</tt> <tt class="py-line"><tt class="py-string">Deinococcus_radiodurans LQANKYDVIVNQVGITPERQNSIGFSQPYAYSRPEIIVAKNNTFNPQSLA</tt> </tt> <a name="L553"></a><tt class="py-lineno"> 553</tt> <tt class="py-line"><tt class="py-string">HISJ_E_COLI LKAKKIDAIMSSLSITEKRQQEIAFTDKLYAADSRLVVAKNSDIQP-TVE</tt> </tt> <a name="L554"></a><tt class="py-lineno"> 554</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L555"></a><tt class="py-lineno"> 555</tt> <tt class="py-line"><tt class="py-string">V_Harveyi_PATH DLAGKTVAVNLGSNFEQLLRDYDKDGKINIKTYDT--GIEHDVALGRADA</tt> </tt> <a name="L556"></a><tt class="py-lineno"> 556</tt> <tt class="py-line"><tt class="py-string">B_subtilis_YXEM DLKGKTVAAVLGSNHAKNLESKDPDKKINIKTYETQEGTLKDVAYGRVDA</tt> </tt> <a name="L557"></a><tt class="py-lineno"> 557</tt> <tt class="py-line"><tt class="py-string">B_subtilis_GlnH_homo_YCKK DVKGKTSAQSLTSNYNKLATN----AGAKVEGVEGMAQALQMIQQARVDM</tt> </tt> <a name="L558"></a><tt class="py-lineno"> 558</tt> <tt class="py-line"><tt class="py-string">YA80_HAEIN DLKGRKSAQSATSNWGKDAKA----AGAQILVVDGLAQSLELIKQGRAEA</tt> </tt> <a name="L559"></a><tt class="py-lineno"> 559</tt> <tt class="py-line"><tt class="py-string">FLIY_ECOLI DLKGKKVGVGLGTNYEEWLRQNV--QGVDVRTYDDDPTKYQDLRVGRIDA</tt> </tt> <a name="L560"></a><tt class="py-lineno"> 560</tt> <tt class="py-line"><tt class="py-string">E_coli_GlnH DLDGKVVAVKSGTGSVDYAKAN--IKTKDLRQFPNIDNAYMELGTNRADA</tt> </tt> <a name="L561"></a><tt class="py-lineno"> 561</tt> <tt class="py-line"><tt class="py-string">Deinococcus_radiodurans DLKGKRVGSTLGSNYEKQLIDTG---DIKIVTYPGAPEILADLVAGRIDA</tt> </tt> <a name="L562"></a><tt class="py-lineno"> 562</tt> <tt class="py-line"><tt class="py-string">HISJ_E_COLI SLKGKRVGVLQGTTQETFGNEHWAPKGIEIVSYQGQDNIYSDLTAGRIDA</tt> </tt> <a name="L563"></a><tt class="py-lineno"> 563</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L564"></a><tt class="py-lineno"> 564</tt> <tt class="py-line"><tt class="py-string">V_Harveyi_PATH FIMDRLSALE-LIKKT-GLPLQLAGEPFETI-----QNAWPFVDNEKGRK</tt> </tt> <a name="L565"></a><tt class="py-lineno"> 565</tt> <tt class="py-line"><tt class="py-string">B_subtilis_YXEM YVNSRTVLIA-QIKKT-GLPLKLAGDPIVYE-----QVAFPFAKDDAHDK</tt> </tt> <a name="L566"></a><tt class="py-lineno"> 566</tt> <tt class="py-line"><tt class="py-string">B_subtilis_GlnH_homo_YCKK TYNDKLAVLN-YLKTSGNKNVKIAFETGEPQ-----STYFTFRKGS--GE</tt> </tt> <a name="L567"></a><tt class="py-lineno"> 567</tt> <tt class="py-line"><tt class="py-string">YA80_HAEIN TINDKLAVLD-YFKQHPNSGLKIAYDRGDKT-----PTAFAFLQGE--DA</tt> </tt> <a name="L568"></a><tt class="py-lineno"> 568</tt> <tt class="py-line"><tt class="py-string">FLIY_ECOLI ILVDRLAALD-LVKKT-NDTLAVTGEAFSRQ-----ESGVALRKGN--ED</tt> </tt> <a name="L569"></a><tt class="py-lineno"> 569</tt> <tt class="py-line"><tt class="py-string">E_coli_GlnH VLHDTPNILY-FIKTAGNGQFKAVGDSLEAQ-----QYGIAFPKGS--DE</tt> </tt> <a name="L570"></a><tt class="py-lineno"> 570</tt> <tt class="py-line"><tt class="py-string">Deinococcus_radiodurans AYNDRLVVNY-IINDQ-KLPVRGAGQIGDAA-----PVGIALKKGN--SA</tt> </tt> <a name="L571"></a><tt class="py-lineno"> 571</tt> <tt class="py-line"><tt class="py-string">HISJ_E_COLI AFQDEVAASEGFLKQPVGKDYKFGGPSVKDEKLFGVGTGMGLRKED--NE</tt> </tt> <a name="L572"></a><tt class="py-lineno"> 572</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L573"></a><tt class="py-lineno"> 573</tt> <tt class="py-line"><tt class="py-string">V_Harveyi_PATH LQAEVNKALAEMRADGTVEKISVKWFGADITK----</tt> </tt> <a name="L574"></a><tt class="py-lineno"> 574</tt> <tt class="py-line"><tt class="py-string">B_subtilis_YXEM LRKKVNKALDELRKDGTLKKLSEKYFNEDITVEQKH</tt> </tt> <a name="L575"></a><tt class="py-lineno"> 575</tt> <tt class="py-line"><tt class="py-string">B_subtilis_GlnH_homo_YCKK VVDQVNKALKEMKEDGTLSKISKKWFGEDVSK----</tt> </tt> <a name="L576"></a><tt class="py-lineno"> 576</tt> <tt class="py-line"><tt class="py-string">YA80_HAEIN LITKFNQVLEALRQDGTLKQISIEWFGYDITQ----</tt> </tt> <a name="L577"></a><tt class="py-lineno"> 577</tt> <tt class="py-line"><tt class="py-string">FLIY_ECOLI LLKAVNDAIAEMQKDGTLQALSEKWFGADVTK----</tt> </tt> <a name="L578"></a><tt class="py-lineno"> 578</tt> <tt class="py-line"><tt class="py-string">E_coli_GlnH LRDKVNGALKTLRENGTYNEIYKKWFGTEPK-----</tt> </tt> <a name="L579"></a><tt class="py-lineno"> 579</tt> <tt class="py-line"><tt class="py-string">Deinococcus_radiodurans LKDQIDKALTEMRSDGTFEKISQKWFGQDVGQP---</tt> </tt> <a name="L580"></a><tt class="py-lineno"> 580</tt> <tt class="py-line"><tt class="py-string">HISJ_E_COLI LREALNKAFAEMRADGTYEKLAKKYFDFDVYGG---</tt> </tt> <a name="L581"></a><tt class="py-lineno"> 581</tt> <tt class="py-line"><tt class="py-string">;</tt> </tt> <a name="L582"></a><tt class="py-lineno"> 582</tt> <tt class="py-line"><tt class="py-string">end;</tt> </tt> <a name="L583"></a><tt class="py-lineno"> 583</tt> <tt class="py-line"><tt class="py-string">"""</tt> </tt> <a name="L584"></a><tt class="py-lineno"> 584</tt> <tt class="py-line"> </tt> <a name="L585"></a><tt class="py-lineno"> 585</tt> <tt class="py-line"> <tt class="py-comment"># This example uses DNA, from here:</tt> </tt> <a name="L586"></a><tt class="py-lineno"> 586</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-comment"># http://www.molecularevolution.org/resources/fileformats/</tt> </tt> <a name="L587"></a><tt class="py-lineno"> 587</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-name">nxs_example2</tt> <tt class="py-op">=</tt> \ </tt> <a name="L588"></a><tt class="py-lineno"> 588</tt> <tt class="py-line"><tt class="py-string">"""#NEXUS </tt> </tt> <a name="L589"></a><tt class="py-lineno"> 589</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L590"></a><tt class="py-lineno"> 590</tt> <tt class="py-line"><tt class="py-string">Begin data;</tt> </tt> <a name="L591"></a><tt class="py-lineno"> 591</tt> <tt class="py-line"><tt class="py-string"> Dimensions ntax=10 nchar=705;</tt> </tt> <a name="L592"></a><tt class="py-lineno"> 592</tt> <tt class="py-line"><tt class="py-string"> Format datatype=dna interleave=yes gap=- missing=?;</tt> </tt> <a name="L593"></a><tt class="py-lineno"> 593</tt> <tt class="py-line"><tt class="py-string"> Matrix</tt> </tt> <a name="L594"></a><tt class="py-lineno"> 594</tt> <tt class="py-line"><tt class="py-string">Cow ATGGCATATCCCATACAACTAGGATTCCAAGATGCAACATCACCAATCATAGAAGAACTA</tt> </tt> <a name="L595"></a><tt class="py-lineno"> 595</tt> <tt class="py-line"><tt class="py-string">Carp ATGGCACACCCAACGCAACTAGGTTTCAAGGACGCGGCCATACCCGTTATAGAGGAACTT</tt> </tt> <a name="L596"></a><tt class="py-lineno"> 596</tt> <tt class="py-line"><tt class="py-string">Chicken ATGGCCAACCACTCCCAACTAGGCTTTCAAGACGCCTCATCCCCCATCATAGAAGAGCTC</tt> </tt> <a name="L597"></a><tt class="py-lineno"> 597</tt> <tt class="py-line"><tt class="py-string">Human ATGGCACATGCAGCGCAAGTAGGTCTACAAGACGCTACTTCCCCTATCATAGAAGAGCTT</tt> </tt> <a name="L598"></a><tt class="py-lineno"> 598</tt> <tt class="py-line"><tt class="py-string">Loach ATGGCACATCCCACACAATTAGGATTCCAAGACGCGGCCTCACCCGTAATAGAAGAACTT</tt> </tt> <a name="L599"></a><tt class="py-lineno"> 599</tt> <tt class="py-line"><tt class="py-string">Mouse ATGGCCTACCCATTCCAACTTGGTCTACAAGACGCCACATCCCCTATTATAGAAGAGCTA</tt> </tt> <a name="L600"></a><tt class="py-lineno"> 600</tt> <tt class="py-line"><tt class="py-string">Rat ATGGCTTACCCATTTCAACTTGGCTTACAAGACGCTACATCACCTATCATAGAAGAACTT</tt> </tt> <a name="L601"></a><tt class="py-lineno"> 601</tt> <tt class="py-line"><tt class="py-string">Seal ATGGCATACCCCCTACAAATAGGCCTACAAGATGCAACCTCTCCCATTATAGAGGAGTTA</tt> </tt> <a name="L602"></a><tt class="py-lineno"> 602</tt> <tt class="py-line"><tt class="py-string">Whale ATGGCATATCCATTCCAACTAGGTTTCCAAGATGCAGCATCACCCATCATAGAAGAGCTC</tt> </tt> <a name="L603"></a><tt class="py-lineno"> 603</tt> <tt class="py-line"><tt class="py-string">Frog ATGGCACACCCATCACAATTAGGTTTTCAAGACGCAGCCTCTCCAATTATAGAAGAATTA</tt> </tt> <a name="L604"></a><tt class="py-lineno"> 604</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L605"></a><tt class="py-lineno"> 605</tt> <tt class="py-line"><tt class="py-string">Cow CTTCACTTTCATGACCACACGCTAATAATTGTCTTCTTAATTAGCTCATTAGTACTTTAC</tt> </tt> <a name="L606"></a><tt class="py-lineno"> 606</tt> <tt class="py-line"><tt class="py-string">Carp CTTCACTTCCACGACCACGCATTAATAATTGTGCTCCTAATTAGCACTTTAGTTTTATAT</tt> </tt> <a name="L607"></a><tt class="py-lineno"> 607</tt> <tt class="py-line"><tt class="py-string">Chicken GTTGAATTCCACGACCACGCCCTGATAGTCGCACTAGCAATTTGCAGCTTAGTACTCTAC</tt> </tt> <a name="L608"></a><tt class="py-lineno"> 608</tt> <tt class="py-line"><tt class="py-string">Human ATCACCTTTCATGATCACGCCCTCATAATCATTTTCCTTATCTGCTTCCTAGTCCTGTAT</tt> </tt> <a name="L609"></a><tt class="py-lineno"> 609</tt> <tt class="py-line"><tt class="py-string">Loach CTTCACTTCCATGACCATGCCCTAATAATTGTATTTTTGATTAGCGCCCTAGTACTTTAT</tt> </tt> <a name="L610"></a><tt class="py-lineno"> 610</tt> <tt class="py-line"><tt class="py-string">Mouse ATAAATTTCCATGATCACACACTAATAATTGTTTTCCTAATTAGCTCCTTAGTCCTCTAT</tt> </tt> <a name="L611"></a><tt class="py-lineno"> 611</tt> <tt class="py-line"><tt class="py-string">Rat ACAAACTTTCATGACCACACCCTAATAATTGTATTCCTCATCAGCTCCCTAGTACTTTAT</tt> </tt> <a name="L612"></a><tt class="py-lineno"> 612</tt> <tt class="py-line"><tt class="py-string">Seal CTACACTTCCATGACCACACATTAATAATTGTGTTCCTAATTAGCTCATTAGTACTCTAC</tt> </tt> <a name="L613"></a><tt class="py-lineno"> 613</tt> <tt class="py-line"><tt class="py-string">Whale CTACACTTTCACGATCATACACTAATAATCGTTTTTCTAATTAGCTCTTTAGTTCTCTAC</tt> </tt> <a name="L614"></a><tt class="py-lineno"> 614</tt> <tt class="py-line"><tt class="py-string">Frog CTTCACTTCCACGACCATACCCTCATAGCCGTTTTTCTTATTAGTACGCTAGTTCTTTAC</tt> </tt> <a name="L615"></a><tt class="py-lineno"> 615</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L616"></a><tt class="py-lineno"> 616</tt> <tt class="py-line"><tt class="py-string">Cow ATTATTTCACTAATACTAACGACAAAGCTGACCCATACAAGCACGATAGATGCACAAGAA</tt> </tt> <a name="L617"></a><tt class="py-lineno"> 617</tt> <tt class="py-line"><tt class="py-string">Carp ATTATTACTGCAATGGTATCAACTAAACTTACTAATAAATATATTCTAGACTCCCAAGAA</tt> </tt> <a name="L618"></a><tt class="py-lineno"> 618</tt> <tt class="py-line"><tt class="py-string">Chicken CTTCTAACTCTTATACTTATAGAAAAACTATCA---TCAAACACCGTAGATGCCCAAGAA</tt> </tt> <a name="L619"></a><tt class="py-lineno"> 619</tt> <tt class="py-line"><tt class="py-string">Human GCCCTTTTCCTAACACTCACAACAAAACTAACTAATACTAACATCTCAGACGCTCAGGAA</tt> </tt> <a name="L620"></a><tt class="py-lineno"> 620</tt> <tt class="py-line"><tt class="py-string">Loach GTTATTATTACAACCGTCTCAACAAAACTCACTAACATATATATTTTGGACTCACAAGAA</tt> </tt> <a name="L621"></a><tt class="py-lineno"> 621</tt> <tt class="py-line"><tt class="py-string">Mouse ATCATCTCGCTAATATTAACAACAAAACTAACACATACAAGCACAATAGATGCACAAGAA</tt> </tt> <a name="L622"></a><tt class="py-lineno"> 622</tt> <tt class="py-line"><tt class="py-string">Rat ATTATTTCACTAATACTAACAACAAAACTAACACACACAAGCACAATAGACGCCCAAGAA</tt> </tt> <a name="L623"></a><tt class="py-lineno"> 623</tt> <tt class="py-line"><tt class="py-string">Seal ATTATCTCACTTATACTAACCACGAAACTCACCCACACAAGTACAATAGACGCACAAGAA</tt> </tt> <a name="L624"></a><tt class="py-lineno"> 624</tt> <tt class="py-line"><tt class="py-string">Whale ATTATTACCCTAATGCTTACAACCAAATTAACACATACTAGTACAATAGACGCCCAAGAA</tt> </tt> <a name="L625"></a><tt class="py-lineno"> 625</tt> <tt class="py-line"><tt class="py-string">Frog ATTATTACTATTATAATAACTACTAAACTAACTAATACAAACCTAATGGACGCACAAGAG</tt> </tt> <a name="L626"></a><tt class="py-lineno"> 626</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L627"></a><tt class="py-lineno"> 627</tt> <tt class="py-line"><tt class="py-string">Cow GTAGAGACAATCTGAACCATTCTGCCCGCCATCATCTTAATTCTAATTGCTCTTCCTTCT</tt> </tt> <a name="L628"></a><tt class="py-lineno"> 628</tt> <tt class="py-line"><tt class="py-string">Carp ATCGAAATCGTATGAACCATTCTACCAGCCGTCATTTTAGTACTAATCGCCCTGCCCTCC</tt> </tt> <a name="L629"></a><tt class="py-lineno"> 629</tt> <tt class="py-line"><tt class="py-string">Chicken GTTGAACTAATCTGAACCATCCTACCCGCTATTGTCCTAGTCCTGCTTGCCCTCCCCTCC</tt> </tt> <a name="L630"></a><tt class="py-lineno"> 630</tt> <tt class="py-line"><tt class="py-string">Human ATAGAAACCGTCTGAACTATCCTGCCCGCCATCATCCTAGTCCTCATCGCCCTCCCATCC</tt> </tt> <a name="L631"></a><tt class="py-lineno"> 631</tt> <tt class="py-line"><tt class="py-string">Loach ATTGAAATCGTATGAACTGTGCTCCCTGCCCTAATCCTCATTTTAATCGCCCTCCCCTCA</tt> </tt> <a name="L632"></a><tt class="py-lineno"> 632</tt> <tt class="py-line"><tt class="py-string">Mouse GTTGAAACCATTTGAACTATTCTACCAGCTGTAATCCTTATCATAATTGCTCTCCCCTCT</tt> </tt> <a name="L633"></a><tt class="py-lineno"> 633</tt> <tt class="py-line"><tt class="py-string">Rat GTAGAAACAATTTGAACAATTCTCCCAGCTGTCATTCTTATTCTAATTGCCCTTCCCTCC</tt> </tt> <a name="L634"></a><tt class="py-lineno"> 634</tt> <tt class="py-line"><tt class="py-string">Seal GTGGAAACGGTGTGAACGATCCTACCCGCTATCATTTTAATTCTCATTGCCCTACCATCA</tt> </tt> <a name="L635"></a><tt class="py-lineno"> 635</tt> <tt class="py-line"><tt class="py-string">Whale GTAGAAACTGTCTGAACTATCCTCCCAGCCATTATCTTAATTTTAATTGCCTTGCCTTCA</tt> </tt> <a name="L636"></a><tt class="py-lineno"> 636</tt> <tt class="py-line"><tt class="py-string">Frog ATCGAAATAGTGTGAACTATTATACCAGCTATTAGCCTCATCATAATTGCCCTTCCATCC</tt> </tt> <a name="L637"></a><tt class="py-lineno"> 637</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L638"></a><tt class="py-lineno"> 638</tt> <tt class="py-line"><tt class="py-string">Cow TTACGAATTCTATACATAATAGATGAAATCAATAACCCATCTCTTACAGTAAAAACCATA</tt> </tt> <a name="L639"></a><tt class="py-lineno"> 639</tt> <tt class="py-line"><tt class="py-string">Carp CTACGCATCCTGTACCTTATAGACGAAATTAACGACCCTCACCTGACAATTAAAGCAATA</tt> </tt> <a name="L640"></a><tt class="py-lineno"> 640</tt> <tt class="py-line"><tt class="py-string">Chicken CTCCAAATCCTCTACATAATAGACGAAATCGACGAACCTGATCTCACCCTAAAAGCCATC</tt> </tt> <a name="L641"></a><tt class="py-lineno"> 641</tt> <tt class="py-line"><tt class="py-string">Human CTACGCATCCTTTACATAACAGACGAGGTCAACGATCCCTCCCTTACCATCAAATCAATT</tt> </tt> <a name="L642"></a><tt class="py-lineno"> 642</tt> <tt class="py-line"><tt class="py-string">Loach CTACGAATTCTATATCTTATAGACGAGATTAATGACCCCCACCTAACAATTAAGGCCATG</tt> </tt> <a name="L643"></a><tt class="py-lineno"> 643</tt> <tt class="py-line"><tt class="py-string">Mouse CTACGCATTCTATATATAATAGACGAAATCAACAACCCCGTATTAACCGTTAAAACCATA</tt> </tt> <a name="L644"></a><tt class="py-lineno"> 644</tt> <tt class="py-line"><tt class="py-string">Rat CTACGAATTCTATACATAATAGACGAGATTAATAACCCAGTTCTAACAGTAAAAACTATA</tt> </tt> <a name="L645"></a><tt class="py-lineno"> 645</tt> <tt class="py-line"><tt class="py-string">Seal TTACGAATCCTCTACATAATGGACGAGATCAATAACCCTTCCTTGACCGTAAAAACTATA</tt> </tt> <a name="L646"></a><tt class="py-lineno"> 646</tt> <tt class="py-line"><tt class="py-string">Whale TTACGGATCCTTTACATAATAGACGAAGTCAATAACCCCTCCCTCACTGTAAAAACAATA</tt> </tt> <a name="L647"></a><tt class="py-lineno"> 647</tt> <tt class="py-line"><tt class="py-string">Frog CTTCGTATCCTATATTTAATAGATGAAGTTAATGATCCACACTTAACAATTAAAGCAATC</tt> </tt> <a name="L648"></a><tt class="py-lineno"> 648</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L649"></a><tt class="py-lineno"> 649</tt> <tt class="py-line"><tt class="py-string">Cow GGACATCAGTGATACTGAAGCTATGAGTATACAGATTATGAGGACTTAAGCTTCGACTCC</tt> </tt> <a name="L650"></a><tt class="py-lineno"> 650</tt> <tt class="py-line"><tt class="py-string">Carp GGACACCAATGATACTGAAGTTACGAGTATACAGACTATGAAAATCTAGGATTCGACTCC</tt> </tt> <a name="L651"></a><tt class="py-lineno"> 651</tt> <tt class="py-line"><tt class="py-string">Chicken GGACACCAATGATACTGAACCTATGAATACACAGACTTCAAGGACCTCTCATTTGACTCC</tt> </tt> <a name="L652"></a><tt class="py-lineno"> 652</tt> <tt class="py-line"><tt class="py-string">Human GGCCACCAATGGTACTGAACCTACGAGTACACCGACTACGGCGGACTAATCTTCAACTCC</tt> </tt> <a name="L653"></a><tt class="py-lineno"> 653</tt> <tt class="py-line"><tt class="py-string">Loach GGGCACCAATGATACTGAAGCTACGAGTATACTGATTATGAAAACTTAAGTTTTGACTCC</tt> </tt> <a name="L654"></a><tt class="py-lineno"> 654</tt> <tt class="py-line"><tt class="py-string">Mouse GGGCACCAATGATACTGAAGCTACGAATATACTGACTATGAAGACCTATGCTTTGATTCA</tt> </tt> <a name="L655"></a><tt class="py-lineno"> 655</tt> <tt class="py-line"><tt class="py-string">Rat GGACACCAATGATACTGAAGCTATGAATATACTGACTATGAAGACCTATGCTTTGACTCC</tt> </tt> <a name="L656"></a><tt class="py-lineno"> 656</tt> <tt class="py-line"><tt class="py-string">Seal GGACATCAGTGATACTGAAGCTATGAGTACACAGACTACGAAGACCTGAACTTTGACTCA</tt> </tt> <a name="L657"></a><tt class="py-lineno"> 657</tt> <tt class="py-line"><tt class="py-string">Whale GGTCACCAATGATATTGAAGCTATGAGTATACCGACTACGAAGACCTAAGCTTCGACTCC</tt> </tt> <a name="L658"></a><tt class="py-lineno"> 658</tt> <tt class="py-line"><tt class="py-string">Frog GGCCACCAATGATACTGAAGCTACGAATATACTAACTATGAGGATCTCTCATTTGACTCT</tt> </tt> <a name="L659"></a><tt class="py-lineno"> 659</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L660"></a><tt class="py-lineno"> 660</tt> <tt class="py-line"><tt class="py-string">Cow TACATAATTCCAACATCAGAATTAAAGCCAGGGGAGCTACGACTATTAGAAGTCGATAAT</tt> </tt> <a name="L661"></a><tt class="py-lineno"> 661</tt> <tt class="py-line"><tt class="py-string">Carp TATATAGTACCAACCCAAGACCTTGCCCCCGGACAATTCCGACTTCTGGAAACAGACCAC</tt> </tt> <a name="L662"></a><tt class="py-lineno"> 662</tt> <tt class="py-line"><tt class="py-string">Chicken TACATAACCCCAACAACAGACCTCCCCCTAGGCCACTTCCGCCTACTAGAAGTCGACCAT</tt> </tt> <a name="L663"></a><tt class="py-lineno"> 663</tt> <tt class="py-line"><tt class="py-string">Human TACATACTTCCCCCATTATTCCTAGAACCAGGCGACCTGCGACTCCTTGACGTTGACAAT</tt> </tt> <a name="L664"></a><tt class="py-lineno"> 664</tt> <tt class="py-line"><tt class="py-string">Loach TACATAATCCCCACCCAGGACCTAACCCCTGGACAATTCCGGCTACTAGAGACAGACCAC</tt> </tt> <a name="L665"></a><tt class="py-lineno"> 665</tt> <tt class="py-line"><tt class="py-string">Mouse TATATAATCCCAACAAACGACCTAAAACCTGGTGAACTACGACTGCTAGAAGTTGATAAC</tt> </tt> <a name="L666"></a><tt class="py-lineno"> 666</tt> <tt class="py-line"><tt class="py-string">Rat TACATAATCCCAACCAATGACCTAAAACCAGGTGAACTTCGTCTATTAGAAGTTGATAAT</tt> </tt> <a name="L667"></a><tt class="py-lineno"> 667</tt> <tt class="py-line"><tt class="py-string">Seal TATATGATCCCCACACAAGAACTAAAGCCCGGAGAACTACGACTGCTAGAAGTAGACAAT</tt> </tt> <a name="L668"></a><tt class="py-lineno"> 668</tt> <tt class="py-line"><tt class="py-string">Whale TATATAATCCCAACATCAGACCTAAAGCCAGGAGAACTACGATTATTAGAAGTAGATAAC</tt> </tt> <a name="L669"></a><tt class="py-lineno"> 669</tt> <tt class="py-line"><tt class="py-string">Frog TATATAATTCCAACTAATGACCTTACCCCTGGACAATTCCGGCTGCTAGAAGTTGATAAT</tt> </tt> <a name="L670"></a><tt class="py-lineno"> 670</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L671"></a><tt class="py-lineno"> 671</tt> <tt class="py-line"><tt class="py-string">Cow CGAGTTGTACTACCAATAGAAATAACAATCCGAATGTTAGTCTCCTCTGAAGACGTATTA</tt> </tt> <a name="L672"></a><tt class="py-lineno"> 672</tt> <tt class="py-line"><tt class="py-string">Carp CGAATAGTTGTTCCAATAGAATCCCCAGTCCGTGTCCTAGTATCTGCTGAAGACGTGCTA</tt> </tt> <a name="L673"></a><tt class="py-lineno"> 673</tt> <tt class="py-line"><tt class="py-string">Chicken CGCATTGTAATCCCCATAGAATCCCCCATTCGAGTAATCATCACCGCTGATGACGTCCTC</tt> </tt> <a name="L674"></a><tt class="py-lineno"> 674</tt> <tt class="py-line"><tt class="py-string">Human CGAGTAGTACTCCCGATTGAAGCCCCCATTCGTATAATAATTACATCACAAGACGTCTTG</tt> </tt> <a name="L675"></a><tt class="py-lineno"> 675</tt> <tt class="py-line"><tt class="py-string">Loach CGAATGGTTGTTCCCATAGAATCCCCTATTCGCATTCTTGTTTCCGCCGAAGATGTACTA</tt> </tt> <a name="L676"></a><tt class="py-lineno"> 676</tt> <tt class="py-line"><tt class="py-string">Mouse CGAGTCGTTCTGCCAATAGAACTTCCAATCCGTATATTAATTTCATCTGAAGACGTCCTC</tt> </tt> <a name="L677"></a><tt class="py-lineno"> 677</tt> <tt class="py-line"><tt class="py-string">Rat CGGGTAGTCTTACCAATAGAACTTCCAATTCGTATACTAATCTCATCCGAAGACGTCCTG</tt> </tt> <a name="L678"></a><tt class="py-lineno"> 678</tt> <tt class="py-line"><tt class="py-string">Seal CGAGTAGTCCTCCCAATAGAAATAACAATCCGCATACTAATCTCATCAGAAGATGTACTC</tt> </tt> <a name="L679"></a><tt class="py-lineno"> 679</tt> <tt class="py-line"><tt class="py-string">Whale CGAGTTGTCTTACCTATAGAAATAACAATCCGAATATTAGTCTCATCAGAAGACGTACTC</tt> </tt> <a name="L680"></a><tt class="py-lineno"> 680</tt> <tt class="py-line"><tt class="py-string">Frog CGAATAGTAGTCCCAATAGAATCTCCAACCCGACTTTTAGTTACAGCCGAAGACGTCCTC</tt> </tt> <a name="L681"></a><tt class="py-lineno"> 681</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L682"></a><tt class="py-lineno"> 682</tt> <tt class="py-line"><tt class="py-string">Cow CACTCATGAGCTGTGCCCTCTCTAGGACTAAAAACAGACGCAATCCCAGGCCGTCTAAAC</tt> </tt> <a name="L683"></a><tt class="py-lineno"> 683</tt> <tt class="py-line"><tt class="py-string">Carp CATTCTTGAGCTGTTCCATCCCTTGGCGTAAAAATGGACGCAGTCCCAGGACGACTAAAT</tt> </tt> <a name="L684"></a><tt class="py-lineno"> 684</tt> <tt class="py-line"><tt class="py-string">Chicken CACTCATGAGCCGTACCCGCCCTCGGGGTAAAAACAGACGCAATCCCTGGACGACTAAAT</tt> </tt> <a name="L685"></a><tt class="py-lineno"> 685</tt> <tt class="py-line"><tt class="py-string">Human CACTCATGAGCTGTCCCCACATTAGGCTTAAAAACAGATGCAATTCCCGGACGTCTAAAC</tt> </tt> <a name="L686"></a><tt class="py-lineno"> 686</tt> <tt class="py-line"><tt class="py-string">Loach CACTCCTGGGCCCTTCCAGCCATGGGGGTAAAGATAGACGCGGTCCCAGGACGCCTTAAC</tt> </tt> <a name="L687"></a><tt class="py-lineno"> 687</tt> <tt class="py-line"><tt class="py-string">Mouse CACTCATGAGCAGTCCCCTCCCTAGGACTTAAAACTGATGCCATCCCAGGCCGACTAAAT</tt> </tt> <a name="L688"></a><tt class="py-lineno"> 688</tt> <tt class="py-line"><tt class="py-string">Rat CACTCATGAGCCATCCCTTCACTAGGGTTAAAAACCGACGCAATCCCCGGCCGCCTAAAC</tt> </tt> <a name="L689"></a><tt class="py-lineno"> 689</tt> <tt class="py-line"><tt class="py-string">Seal CACTCATGAGCCGTACCGTCCCTAGGACTAAAAACTGATGCTATCCCAGGACGACTAAAC</tt> </tt> <a name="L690"></a><tt class="py-lineno"> 690</tt> <tt class="py-line"><tt class="py-string">Whale CACTCATGGGCCGTACCCTCCTTGGGCCTAAAAACAGATGCAATCCCAGGACGCCTAAAC</tt> </tt> <a name="L691"></a><tt class="py-lineno"> 691</tt> <tt class="py-line"><tt class="py-string">Frog CACTCGTGAGCTGTACCCTCCTTGGGTGTCAAAACAGATGCAATCCCAGGACGACTTCAT</tt> </tt> <a name="L692"></a><tt class="py-lineno"> 692</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L693"></a><tt class="py-lineno"> 693</tt> <tt class="py-line"><tt class="py-string">Cow CAAACAACCCTTATATCGTCCCGTCCAGGCTTATATTACGGTCAATGCTCAGAAATTTGC</tt> </tt> <a name="L694"></a><tt class="py-lineno"> 694</tt> <tt class="py-line"><tt class="py-string">Carp CAAGCCGCCTTTATTGCCTCACGCCCAGGGGTCTTTTACGGACAATGCTCTGAAATTTGT</tt> </tt> <a name="L695"></a><tt class="py-lineno"> 695</tt> <tt class="py-line"><tt class="py-string">Chicken CAAACCTCCTTCATCACCACTCGACCAGGAGTGTTTTACGGACAATGCTCAGAAATCTGC</tt> </tt> <a name="L696"></a><tt class="py-lineno"> 696</tt> <tt class="py-line"><tt class="py-string">Human CAAACCACTTTCACCGCTACACGACCGGGGGTATACTACGGTCAATGCTCTGAAATCTGT</tt> </tt> <a name="L697"></a><tt class="py-lineno"> 697</tt> <tt class="py-line"><tt class="py-string">Loach CAAACCGCCTTTATTGCCTCCCGCCCCGGGGTATTCTATGGGCAATGCTCAGAAATCTGT</tt> </tt> <a name="L698"></a><tt class="py-lineno"> 698</tt> <tt class="py-line"><tt class="py-string">Mouse CAAGCAACAGTAACATCAAACCGACCAGGGTTATTCTATGGCCAATGCTCTGAAATTTGT</tt> </tt> <a name="L699"></a><tt class="py-lineno"> 699</tt> <tt class="py-line"><tt class="py-string">Rat CAAGCTACAGTCACATCAAACCGACCAGGTCTATTCTATGGCCAATGCTCTGAAATTTGC</tt> </tt> <a name="L700"></a><tt class="py-lineno"> 700</tt> <tt class="py-line"><tt class="py-string">Seal CAAACAACCCTAATAACCATACGACCAGGACTGTACTACGGTCAATGCTCAGAAATCTGT</tt> </tt> <a name="L701"></a><tt class="py-lineno"> 701</tt> <tt class="py-line"><tt class="py-string">Whale CAAACAACCTTAATATCAACACGACCAGGCCTATTTTATGGACAATGCTCAGAGATCTGC</tt> </tt> <a name="L702"></a><tt class="py-lineno"> 702</tt> <tt class="py-line"><tt class="py-string">Frog CAAACATCATTTATTGCTACTCGTCCGGGAGTATTTTACGGACAATGTTCAGAAATTTGC</tt> </tt> <a name="L703"></a><tt class="py-lineno"> 703</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L704"></a><tt class="py-lineno"> 704</tt> <tt class="py-line"><tt class="py-string">Cow GGGTCAAACCACAGTTTCATACCCATTGTCCTTGAGTTAGTCCCACTAAAGTACTTTGAA</tt> </tt> <a name="L705"></a><tt class="py-lineno"> 705</tt> <tt class="py-line"><tt class="py-string">Carp GGAGCTAATCACAGCTTTATACCAATTGTAGTTGAAGCAGTACCTCTCGAACACTTCGAA</tt> </tt> <a name="L706"></a><tt class="py-lineno"> 706</tt> <tt class="py-line"><tt class="py-string">Chicken GGAGCTAACCACAGCTACATACCCATTGTAGTAGAGTCTACCCCCCTAAAACACTTTGAA</tt> </tt> <a name="L707"></a><tt class="py-lineno"> 707</tt> <tt class="py-line"><tt class="py-string">Human GGAGCAAACCACAGTTTCATGCCCATCGTCCTAGAATTAATTCCCCTAAAAATCTTTGAA</tt> </tt> <a name="L708"></a><tt class="py-lineno"> 708</tt> <tt class="py-line"><tt class="py-string">Loach GGAGCAAACCACAGCTTTATACCCATCGTAGTAGAAGCGGTCCCACTATCTCACTTCGAA</tt> </tt> <a name="L709"></a><tt class="py-lineno"> 709</tt> <tt class="py-line"><tt class="py-string">Mouse GGATCTAACCATAGCTTTATGCCCATTGTCCTAGAAATGGTTCCACTAAAATATTTCGAA</tt> </tt> <a name="L710"></a><tt class="py-lineno"> 710</tt> <tt class="py-line"><tt class="py-string">Rat GGCTCAAATCACAGCTTCATACCCATTGTACTAGAAATAGTGCCTCTAAAATATTTCGAA</tt> </tt> <a name="L711"></a><tt class="py-lineno"> 711</tt> <tt class="py-line"><tt class="py-string">Seal GGTTCAAACCACAGCTTCATACCTATTGTCCTCGAATTGGTCCCACTATCCCACTTCGAG</tt> </tt> <a name="L712"></a><tt class="py-lineno"> 712</tt> <tt class="py-line"><tt class="py-string">Whale GGCTCAAACCACAGTTTCATACCAATTGTCCTAGAACTAGTACCCCTAGAAGTCTTTGAA</tt> </tt> <a name="L713"></a><tt class="py-lineno"> 713</tt> <tt class="py-line"><tt class="py-string">Frog GGAGCAAACCACAGCTTTATACCAATTGTAGTTGAAGCAGTACCGCTAACCGACTTTGAA</tt> </tt> <a name="L714"></a><tt class="py-lineno"> 714</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L715"></a><tt class="py-lineno"> 715</tt> <tt class="py-line"><tt class="py-string">Cow AAATGATCTGCGTCAATATTA---------------------TAA</tt> </tt> <a name="L716"></a><tt class="py-lineno"> 716</tt> <tt class="py-line"><tt class="py-string">Carp AACTGATCCTCATTAATACTAGAAGACGCCTCGCTAGGAAGCTAA</tt> </tt> <a name="L717"></a><tt class="py-lineno"> 717</tt> <tt class="py-line"><tt class="py-string">Chicken GCCTGATCCTCACTA------------------CTGTCATCTTAA</tt> </tt> <a name="L718"></a><tt class="py-lineno"> 718</tt> <tt class="py-line"><tt class="py-string">Human ATA---------------------GGGCCCGTATTTACCCTATAG</tt> </tt> <a name="L719"></a><tt class="py-lineno"> 719</tt> <tt class="py-line"><tt class="py-string">Loach AACTGGTCCACCCTTATACTAAAAGACGCCTCACTAGGAAGCTAA</tt> </tt> <a name="L720"></a><tt class="py-lineno"> 720</tt> <tt class="py-line"><tt class="py-string">Mouse AACTGATCTGCTTCAATAATT---------------------TAA</tt> </tt> <a name="L721"></a><tt class="py-lineno"> 721</tt> <tt class="py-line"><tt class="py-string">Rat AACTGATCAGCTTCTATAATT---------------------TAA</tt> </tt> <a name="L722"></a><tt class="py-lineno"> 722</tt> <tt class="py-line"><tt class="py-string">Seal AAATGATCTACCTCAATGCTT---------------------TAA</tt> </tt> <a name="L723"></a><tt class="py-lineno"> 723</tt> <tt class="py-line"><tt class="py-string">Whale AAATGATCTGTATCAATACTA---------------------TAA</tt> </tt> <a name="L724"></a><tt class="py-lineno"> 724</tt> <tt class="py-line"><tt class="py-string">Frog AACTGATCTTCATCAATACTA---GAAGCATCACTA------AGA</tt> </tt> <a name="L725"></a><tt class="py-lineno"> 725</tt> <tt class="py-line"><tt class="py-string"> ;</tt> </tt> <a name="L726"></a><tt class="py-lineno"> 726</tt> <tt class="py-line"><tt class="py-string">End;</tt> </tt> <a name="L727"></a><tt class="py-lineno"> 727</tt> <tt class="py-line"><tt class="py-string">"""</tt> </tt> <a name="L728"></a><tt class="py-lineno"> 728</tt> <tt class="py-line"> </tt> <a name="L729"></a><tt class="py-lineno"> 729</tt> <tt class="py-line"> <tt class="py-comment"># This example uses amino acids, from here:</tt> </tt> <a name="L730"></a><tt class="py-lineno"> 730</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-comment"># http://www.molecularevolution.org/resources/fileformats/</tt> </tt> <a name="L731"></a><tt class="py-lineno"> 731</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-name">nxs_example3</tt> <tt class="py-op">=</tt> \ </tt> <a name="L732"></a><tt class="py-lineno"> 732</tt> <tt class="py-line"><tt class="py-string">"""#NEXUS </tt> </tt> <a name="L733"></a><tt class="py-lineno"> 733</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L734"></a><tt class="py-lineno"> 734</tt> <tt class="py-line"><tt class="py-string">Begin data;</tt> </tt> <a name="L735"></a><tt class="py-lineno"> 735</tt> <tt class="py-line"><tt class="py-string"> Dimensions ntax=10 nchar=234;</tt> </tt> <a name="L736"></a><tt class="py-lineno"> 736</tt> <tt class="py-line"><tt class="py-string"> Format datatype=protein gap=- interleave;</tt> </tt> <a name="L737"></a><tt class="py-lineno"> 737</tt> <tt class="py-line"><tt class="py-string"> Matrix</tt> </tt> <a name="L738"></a><tt class="py-lineno"> 738</tt> <tt class="py-line"><tt class="py-string">Cow MAYPMQLGFQDATSPIMEELLHFHDHTLMIVFLISSLVLYIISLMLTTKLTHTSTMDAQE</tt> </tt> <a name="L739"></a><tt class="py-lineno"> 739</tt> <tt class="py-line"><tt class="py-string">Carp MAHPTQLGFKDAAMPVMEELLHFHDHALMIVLLISTLVLYIITAMVSTKLTNKYILDSQE</tt> </tt> <a name="L740"></a><tt class="py-lineno"> 740</tt> <tt class="py-line"><tt class="py-string">Chicken MANHSQLGFQDASSPIMEELVEFHDHALMVALAICSLVLYLLTLMLMEKLS-SNTVDAQE</tt> </tt> <a name="L741"></a><tt class="py-lineno"> 741</tt> <tt class="py-line"><tt class="py-string">Human MAHAAQVGLQDATSPIMEELITFHDHALMIIFLICFLVLYALFLTLTTKLTNTNISDAQE</tt> </tt> <a name="L742"></a><tt class="py-lineno"> 742</tt> <tt class="py-line"><tt class="py-string">Loach MAHPTQLGFQDAASPVMEELLHFHDHALMIVFLISALVLYVIITTVSTKLTNMYILDSQE</tt> </tt> <a name="L743"></a><tt class="py-lineno"> 743</tt> <tt class="py-line"><tt class="py-string">Mouse MAYPFQLGLQDATSPIMEELMNFHDHTLMIVFLISSLVLYIISLMLTTKLTHTSTMDAQE</tt> </tt> <a name="L744"></a><tt class="py-lineno"> 744</tt> <tt class="py-line"><tt class="py-string">Rat MAYPFQLGLQDATSPIMEELTNFHDHTLMIVFLISSLVLYIISLMLTTKLTHTSTMDAQE</tt> </tt> <a name="L745"></a><tt class="py-lineno"> 745</tt> <tt class="py-line"><tt class="py-string">Seal MAYPLQMGLQDATSPIMEELLHFHDHTLMIVFLISSLVLYIISLMLTTKLTHTSTMDAQE</tt> </tt> <a name="L746"></a><tt class="py-lineno"> 746</tt> <tt class="py-line"><tt class="py-string">Whale MAYPFQLGFQDAASPIMEELLHFHDHTLMIVFLISSLVLYIITLMLTTKLTHTSTMDAQE</tt> </tt> <a name="L747"></a><tt class="py-lineno"> 747</tt> <tt class="py-line"><tt class="py-string">Frog MAHPSQLGFQDAASPIMEELLHFHDHTLMAVFLISTLVLYIITIMMTTKLTNTNLMDAQE</tt> </tt> <a name="L748"></a><tt class="py-lineno"> 748</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L749"></a><tt class="py-lineno"> 749</tt> <tt class="py-line"><tt class="py-string">Cow VETIWTILPAIILILIALPSLRILYMMDEINNPSLTVKTMGHQWYWSYEYTDYEDLSFDS</tt> </tt> <a name="L750"></a><tt class="py-lineno"> 750</tt> <tt class="py-line"><tt class="py-string">Carp IEIVWTILPAVILVLIALPSLRILYLMDEINDPHLTIKAMGHQWYWSYEYTDYENLGFDS</tt> </tt> <a name="L751"></a><tt class="py-lineno"> 751</tt> <tt class="py-line"><tt class="py-string">Chicken VELIWTILPAIVLVLLALPSLQILYMMDEIDEPDLTLKAIGHQWYWTYEYTDFKDLSFDS</tt> </tt> <a name="L752"></a><tt class="py-lineno"> 752</tt> <tt class="py-line"><tt class="py-string">Human METVWTILPAIILVLIALPSLRILYMTDEVNDPSLTIKSIGHQWYWTYEYTDYGGLIFNS</tt> </tt> <a name="L753"></a><tt class="py-lineno"> 753</tt> <tt class="py-line"><tt class="py-string">Loach IEIVWTVLPALILILIALPSLRILYLMDEINDPHLTIKAMGHQWYWSYEYTDYENLSFDS</tt> </tt> <a name="L754"></a><tt class="py-lineno"> 754</tt> <tt class="py-line"><tt class="py-string">Mouse VETIWTILPAVILIMIALPSLRILYMMDEINNPVLTVKTMGHQWYWSYEYTDYEDLCFDS</tt> </tt> <a name="L755"></a><tt class="py-lineno"> 755</tt> <tt class="py-line"><tt class="py-string">Rat VETIWTILPAVILILIALPSLRILYMMDEINNPVLTVKTMGHQWYWSYEYTDYEDLCFDS</tt> </tt> <a name="L756"></a><tt class="py-lineno"> 756</tt> <tt class="py-line"><tt class="py-string">Seal VETVWTILPAIILILIALPSLRILYMMDEINNPSLTVKTMGHQWYWSYEYTDYEDLNFDS</tt> </tt> <a name="L757"></a><tt class="py-lineno"> 757</tt> <tt class="py-line"><tt class="py-string">Whale VETVWTILPAIILILIALPSLRILYMMDEVNNPSLTVKTMGHQWYWSYEYTDYEDLSFDS</tt> </tt> <a name="L758"></a><tt class="py-lineno"> 758</tt> <tt class="py-line"><tt class="py-string">Frog IEMVWTIMPAISLIMIALPSLRILYLMDEVNDPHLTIKAIGHQWYWSYEYTNYEDLSFDS</tt> </tt> <a name="L759"></a><tt class="py-lineno"> 759</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L760"></a><tt class="py-lineno"> 760</tt> <tt class="py-line"><tt class="py-string">Cow YMIPTSELKPGELRLLEVDNRVVLPMEMTIRMLVSSEDVLHSWAVPSLGLKTDAIPGRLN</tt> </tt> <a name="L761"></a><tt class="py-lineno"> 761</tt> <tt class="py-line"><tt class="py-string">Carp YMVPTQDLAPGQFRLLETDHRMVVPMESPVRVLVSAEDVLHSWAVPSLGVKMDAVPGRLN</tt> </tt> <a name="L762"></a><tt class="py-lineno"> 762</tt> <tt class="py-line"><tt class="py-string">Chicken YMTPTTDLPLGHFRLLEVDHRIVIPMESPIRVIITADDVLHSWAVPALGVKTDAIPGRLN</tt> </tt> <a name="L763"></a><tt class="py-lineno"> 763</tt> <tt class="py-line"><tt class="py-string">Human YMLPPLFLEPGDLRLLDVDNRVVLPIEAPIRMMITSQDVLHSWAVPTLGLKTDAIPGRLN</tt> </tt> <a name="L764"></a><tt class="py-lineno"> 764</tt> <tt class="py-line"><tt class="py-string">Loach YMIPTQDLTPGQFRLLETDHRMVVPMESPIRILVSAEDVLHSWALPAMGVKMDAVPGRLN</tt> </tt> <a name="L765"></a><tt class="py-lineno"> 765</tt> <tt class="py-line"><tt class="py-string">Mouse YMIPTNDLKPGELRLLEVDNRVVLPMELPIRMLISSEDVLHSWAVPSLGLKTDAIPGRLN</tt> </tt> <a name="L766"></a><tt class="py-lineno"> 766</tt> <tt class="py-line"><tt class="py-string">Rat YMIPTNDLKPGELRLLEVDNRVVLPMELPIRMLISSEDVLHSWAIPSLGLKTDAIPGRLN</tt> </tt> <a name="L767"></a><tt class="py-lineno"> 767</tt> <tt class="py-line"><tt class="py-string">Seal YMIPTQELKPGELRLLEVDNRVVLPMEMTIRMLISSEDVLHSWAVPSLGLKTDAIPGRLN</tt> </tt> <a name="L768"></a><tt class="py-lineno"> 768</tt> <tt class="py-line"><tt class="py-string">Whale YMIPTSDLKPGELRLLEVDNRVVLPMEMTIRMLVSSEDVLHSWAVPSLGLKTDAIPGRLN</tt> </tt> <a name="L769"></a><tt class="py-lineno"> 769</tt> <tt class="py-line"><tt class="py-string">Frog YMIPTNDLTPGQFRLLEVDNRMVVPMESPTRLLVTAEDVLHSWAVPSLGVKTDAIPGRLH</tt> </tt> <a name="L770"></a><tt class="py-lineno"> 770</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L771"></a><tt class="py-lineno"> 771</tt> <tt class="py-line"><tt class="py-string">Cow QTTLMSSRPGLYYGQCSEICGSNHSFMPIVLELVPLKYFEKWSASML-------</tt> </tt> <a name="L772"></a><tt class="py-lineno"> 772</tt> <tt class="py-line"><tt class="py-string">Carp QAAFIASRPGVFYGQCSEICGANHSFMPIVVEAVPLEHFENWSSLMLEDASLGS</tt> </tt> <a name="L773"></a><tt class="py-lineno"> 773</tt> <tt class="py-line"><tt class="py-string">Chicken QTSFITTRPGVFYGQCSEICGANHSYMPIVVESTPLKHFEAWSSL------LSS</tt> </tt> <a name="L774"></a><tt class="py-lineno"> 774</tt> <tt class="py-line"><tt class="py-string">Human QTTFTATRPGVYYGQCSEICGANHSFMPIVLELIPLKIFEM-------GPVFTL</tt> </tt> <a name="L775"></a><tt class="py-lineno"> 775</tt> <tt class="py-line"><tt class="py-string">Loach QTAFIASRPGVFYGQCSEICGANHSFMPIVVEAVPLSHFENWSTLMLKDASLGS</tt> </tt> <a name="L776"></a><tt class="py-lineno"> 776</tt> <tt class="py-line"><tt class="py-string">Mouse QATVTSNRPGLFYGQCSEICGSNHSFMPIVLEMVPLKYFENWSASMI-------</tt> </tt> <a name="L777"></a><tt class="py-lineno"> 777</tt> <tt class="py-line"><tt class="py-string">Rat QATVTSNRPGLFYGQCSEICGSNHSFMPIVLEMVPLKYFENWSASMI-------</tt> </tt> <a name="L778"></a><tt class="py-lineno"> 778</tt> <tt class="py-line"><tt class="py-string">Seal QTTLMTMRPGLYYGQCSEICGSNHSFMPIVLELVPLSHFEKWSTSML-------</tt> </tt> <a name="L779"></a><tt class="py-lineno"> 779</tt> <tt class="py-line"><tt class="py-string">Whale QTTLMSTRPGLFYGQCSEICGSNHSFMPIVLELVPLEVFEKWSVSML-------</tt> </tt> <a name="L780"></a><tt class="py-lineno"> 780</tt> <tt class="py-line"><tt class="py-string">Frog QTSFIATRPGVFYGQCSEICGANHSFMPIVVEAVPLTDFENWSSSML-EASL--</tt> </tt> <a name="L781"></a><tt class="py-lineno"> 781</tt> <tt class="py-line"><tt class="py-string"> ;</tt> </tt> <a name="L782"></a><tt class="py-lineno"> 782</tt> <tt class="py-line"><tt class="py-string">End;</tt> </tt> <a name="L783"></a><tt class="py-lineno"> 783</tt> <tt class="py-line"><tt class="py-string">"""</tt> </tt> <a name="L784"></a><tt class="py-lineno"> 784</tt> <tt class="py-line"> </tt> <a name="L785"></a><tt class="py-lineno"> 785</tt> <tt class="py-line"> <tt class="py-comment"># This example with its slightly odd (partial) annotation is from here:</tt> </tt> <a name="L786"></a><tt class="py-lineno"> 786</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-comment"># http://www.cgb.ki.se/cgb/groups/sonnhammer/Stockholm.html</tt> </tt> <a name="L787"></a><tt class="py-lineno"> 787</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-name">sth_example</tt> <tt class="py-op">=</tt> \ </tt> <a name="L788"></a><tt class="py-lineno"> 788</tt> <tt class="py-line"><tt class="py-string">"""# STOCKHOLM 1.0</tt> </tt> <a name="L789"></a><tt class="py-lineno"> 789</tt> <tt class="py-line"><tt class="py-string">#=GF ID CBS</tt> </tt> <a name="L790"></a><tt class="py-lineno"> 790</tt> <tt class="py-line"><tt class="py-string">#=GF AC PF00571</tt> </tt> <a name="L791"></a><tt class="py-lineno"> 791</tt> <tt class="py-line"><tt class="py-string">#=GF DE CBS domain</tt> </tt> <a name="L792"></a><tt class="py-lineno"> 792</tt> <tt class="py-line"><tt class="py-string">#=GF AU Bateman A</tt> </tt> <a name="L793"></a><tt class="py-lineno"> 793</tt> <tt class="py-line"><tt class="py-string">#=GF CC CBS domains are small intracellular modules mostly found </tt> </tt> <a name="L794"></a><tt class="py-lineno"> 794</tt> <tt class="py-line"><tt class="py-string">#=GF CC in 2 or four copies within a protein. </tt> </tt> <a name="L795"></a><tt class="py-lineno"> 795</tt> <tt class="py-line"><tt class="py-string">#=GF SQ 67</tt> </tt> <a name="L796"></a><tt class="py-lineno"> 796</tt> <tt class="py-line"><tt class="py-string">#=GS O31698/18-71 AC O31698</tt> </tt> <a name="L797"></a><tt class="py-lineno"> 797</tt> <tt class="py-line"><tt class="py-string">#=GS O83071/192-246 AC O83071</tt> </tt> <a name="L798"></a><tt class="py-lineno"> 798</tt> <tt class="py-line"><tt class="py-string">#=GS O83071/259-312 AC O83071</tt> </tt> <a name="L799"></a><tt class="py-lineno"> 799</tt> <tt class="py-line"><tt class="py-string">#=GS O31698/88-139 AC O31698</tt> </tt> <a name="L800"></a><tt class="py-lineno"> 800</tt> <tt class="py-line"><tt class="py-string">#=GS O31698/88-139 OS Bacillus subtilis</tt> </tt> <a name="L801"></a><tt class="py-lineno"> 801</tt> <tt class="py-line"><tt class="py-string">O83071/192-246 MTCRAQLIAVPRASSLAE..AIACAQKM....RVSRVPVYERS</tt> </tt> <a name="L802"></a><tt class="py-lineno"> 802</tt> <tt class="py-line"><tt class="py-string">#=GR O83071/192-246 SA 999887756453524252..55152525....36463774777</tt> </tt> <a name="L803"></a><tt class="py-lineno"> 803</tt> <tt class="py-line"><tt class="py-string">O83071/259-312 MQHVSAPVFVFECTRLAY..VQHKLRAH....SRAVAIVLDEY</tt> </tt> <a name="L804"></a><tt class="py-lineno"> 804</tt> <tt class="py-line"><tt class="py-string">#=GR O83071/259-312 SS CCCCCHHHHHHHHHHHHH..EEEEEEEE....EEEEEEEEEEE</tt> </tt> <a name="L805"></a><tt class="py-lineno"> 805</tt> <tt class="py-line"><tt class="py-string">O31698/18-71 MIEADKVAHVQVGNNLEH..ALLVLTKT....GYTAIPVLDPS</tt> </tt> <a name="L806"></a><tt class="py-lineno"> 806</tt> <tt class="py-line"><tt class="py-string">#=GR O31698/18-71 SS CCCHHHHHHHHHHHHHHH..EEEEEEEE....EEEEEEEEHHH</tt> </tt> <a name="L807"></a><tt class="py-lineno"> 807</tt> <tt class="py-line"><tt class="py-string">O31698/88-139 EVMLTDIPRLHINDPIMK..GFGMVINN......GFVCVENDE</tt> </tt> <a name="L808"></a><tt class="py-lineno"> 808</tt> <tt class="py-line"><tt class="py-string">#=GR O31698/88-139 SS CCCCCCCHHHHHHHHHHH..HEEEEEEE....EEEEEEEEEEH</tt> </tt> <a name="L809"></a><tt class="py-lineno"> 809</tt> <tt class="py-line"><tt class="py-string">#=GC SS_cons CCCCCHHHHHHHHHHHHH..EEEEEEEE....EEEEEEEEEEH</tt> </tt> <a name="L810"></a><tt class="py-lineno"> 810</tt> <tt class="py-line"><tt class="py-string">O31699/88-139 EVMLTDIPRLHINDPIMK..GFGMVINN......GFVCVENDE</tt> </tt> <a name="L811"></a><tt class="py-lineno"> 811</tt> <tt class="py-line"><tt class="py-string">#=GR O31699/88-139 AS ________________*__________________________</tt> </tt> <a name="L812"></a><tt class="py-lineno"> 812</tt> <tt class="py-line"><tt class="py-string">#=GR_O31699/88-139_IN ____________1______________2__________0____</tt> </tt> <a name="L813"></a><tt class="py-lineno"> 813</tt> <tt class="py-line"><tt class="py-string">//</tt> </tt> <a name="L814"></a><tt class="py-lineno"> 814</tt> <tt class="py-line"><tt class="py-string">"""</tt> </tt> <a name="L815"></a><tt class="py-lineno"> 815</tt> <tt class="py-line"> </tt> <a name="L816"></a><tt class="py-lineno"> 816</tt> <tt class="py-line"> <tt class="py-comment"># Interlaced example from BioPerl documentation. Also note the blank line.</tt> </tt> <a name="L817"></a><tt class="py-lineno"> 817</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-comment"># http://www.bioperl.org/wiki/Stockholm_multiple_alignment_format</tt> </tt> <a name="L818"></a><tt class="py-lineno"> 818</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-name">sth_example2</tt> <tt class="py-op">=</tt> \ </tt> <a name="L819"></a><tt class="py-lineno"> 819</tt> <tt class="py-line"><tt class="py-string">"""# STOCKHOLM 1.0</tt> </tt> <a name="L820"></a><tt class="py-lineno"> 820</tt> <tt class="py-line"><tt class="py-string">#=GC SS_cons .................<<<<<<<<...<<<<<<<........>>>>>>>..</tt> </tt> <a name="L821"></a><tt class="py-lineno"> 821</tt> <tt class="py-line"><tt class="py-string">AP001509.1 UUAAUCGAGCUCAACACUCUUCGUAUAUCCUC-UCAAUAUGG-GAUGAGGGU</tt> </tt> <a name="L822"></a><tt class="py-lineno"> 822</tt> <tt class="py-line"><tt class="py-string">#=GR AP001509.1 SS -----------------<<<<<<<<---..<<-<<-------->>->>..--</tt> </tt> <a name="L823"></a><tt class="py-lineno"> 823</tt> <tt class="py-line"><tt class="py-string">AE007476.1 AAAAUUGAAUAUCGUUUUACUUGUUUAU-GUCGUGAAU-UGG-CACGA-CGU</tt> </tt> <a name="L824"></a><tt class="py-lineno"> 824</tt> <tt class="py-line"><tt class="py-string">#=GR AE007476.1 SS -----------------<<<<<<<<-----<<.<<-------->>.>>----</tt> </tt> <a name="L825"></a><tt class="py-lineno"> 825</tt> <tt class="py-line"><tt class="py-string"></tt> </tt> <a name="L826"></a><tt class="py-lineno"> 826</tt> <tt class="py-line"><tt class="py-string">#=GC SS_cons ......<<<<<<<.......>>>>>>>..>>>>>>>>...............</tt> </tt> <a name="L827"></a><tt class="py-lineno"> 827</tt> <tt class="py-line"><tt class="py-string">AP001509.1 CUCUAC-AGGUA-CCGUAAA-UACCUAGCUACGAAAAGAAUGCAGUUAAUGU</tt> </tt> <a name="L828"></a><tt class="py-lineno"> 828</tt> <tt class="py-line"><tt class="py-string">#=GR AP001509.1 SS -------<<<<<--------->>>>>--->>>>>>>>---------------</tt> </tt> <a name="L829"></a><tt class="py-lineno"> 829</tt> <tt class="py-line"><tt class="py-string">AE007476.1 UUCUACAAGGUG-CCGG-AA-CACCUAACAAUAAGUAAGUCAGCAGUGAGAU</tt> </tt> <a name="L830"></a><tt class="py-lineno"> 830</tt> <tt class="py-line"><tt class="py-string">#=GR AE007476.1 SS ------.<<<<<--------->>>>>.-->>>>>>>>---------------</tt> </tt> <a name="L831"></a><tt class="py-lineno"> 831</tt> <tt class="py-line"><tt class="py-string">//"""</tt> </tt> <a name="L832"></a><tt class="py-lineno"> 832</tt> <tt class="py-line"> </tt> <a name="L833"></a><tt class="py-lineno"> 833</tt> <tt class="py-line"> <tt class="py-comment"># Sample GenBank record from here:</tt> </tt> <a name="L834"></a><tt class="py-lineno"> 834</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-comment"># http://www.ncbi.nlm.nih.gov/Sitemap/samplerecord.html</tt> </tt> <a name="L835"></a><tt class="py-lineno"> 835</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-name">gbk_example</tt> <tt class="py-op">=</tt> \ </tt> <a name="L836"></a><tt class="py-lineno"> 836</tt> <tt class="py-line"><tt class="py-string">"""LOCUS SCU49845 5028 bp DNA PLN 21-JUN-1999</tt> </tt> <a name="L837"></a><tt class="py-lineno"> 837</tt> <tt class="py-line"><tt class="py-string">DEFINITION Saccharomyces cerevisiae TCP1-beta gene, partial cds, and Axl2p</tt> </tt> <a name="L838"></a><tt class="py-lineno"> 838</tt> <tt class="py-line"><tt class="py-string"> (AXL2) and Rev7p (REV7) genes, complete cds.</tt> </tt> <a name="L839"></a><tt class="py-lineno"> 839</tt> <tt class="py-line"><tt class="py-string">ACCESSION U49845</tt> </tt> <a name="L840"></a><tt class="py-lineno"> 840</tt> <tt class="py-line"><tt class="py-string">VERSION U49845.1 GI:1293613</tt> </tt> <a name="L841"></a><tt class="py-lineno"> 841</tt> <tt class="py-line"><tt class="py-string">KEYWORDS .</tt> </tt> <a name="L842"></a><tt class="py-lineno"> 842</tt> <tt class="py-line"><tt class="py-string">SOURCE Saccharomyces cerevisiae (baker's yeast)</tt> </tt> <a name="L843"></a><tt class="py-lineno"> 843</tt> <tt class="py-line"><tt class="py-string"> ORGANISM Saccharomyces cerevisiae</tt> </tt> <a name="L844"></a><tt class="py-lineno"> 844</tt> <tt class="py-line"><tt class="py-string"> Eukaryota; Fungi; Ascomycota; Saccharomycotina; Saccharomycetes;</tt> </tt> <a name="L845"></a><tt class="py-lineno"> 845</tt> <tt class="py-line"><tt class="py-string"> Saccharomycetales; Saccharomycetaceae; Saccharomyces.</tt> </tt> <a name="L846"></a><tt class="py-lineno"> 846</tt> <tt class="py-line"><tt class="py-string">REFERENCE 1 (bases 1 to 5028)</tt> </tt> <a name="L847"></a><tt class="py-lineno"> 847</tt> <tt class="py-line"><tt class="py-string"> AUTHORS Torpey,L.E., Gibbs,P.E., Nelson,J. and Lawrence,C.W.</tt> </tt> <a name="L848"></a><tt class="py-lineno"> 848</tt> <tt class="py-line"><tt class="py-string"> TITLE Cloning and sequence of REV7, a gene whose function is required for</tt> </tt> <a name="L849"></a><tt class="py-lineno"> 849</tt> <tt class="py-line"><tt class="py-string"> DNA damage-induced mutagenesis in Saccharomyces cerevisiae</tt> </tt> <a name="L850"></a><tt class="py-lineno"> 850</tt> <tt class="py-line"><tt class="py-string"> JOURNAL Yeast 10 (11), 1503-1509 (1994)</tt> </tt> <a name="L851"></a><tt class="py-lineno"> 851</tt> <tt class="py-line"><tt class="py-string"> PUBMED 7871890</tt> </tt> <a name="L852"></a><tt class="py-lineno"> 852</tt> <tt class="py-line"><tt class="py-string">REFERENCE 2 (bases 1 to 5028)</tt> </tt> <a name="L853"></a><tt class="py-lineno"> 853</tt> <tt class="py-line"><tt class="py-string"> AUTHORS Roemer,T., Madden,K., Chang,J. and Snyder,M.</tt> </tt> <a name="L854"></a><tt class="py-lineno"> 854</tt> <tt class="py-line"><tt class="py-string"> TITLE Selection of axial growth sites in yeast requires Axl2p, a novel</tt> </tt> <a name="L855"></a><tt class="py-lineno"> 855</tt> <tt class="py-line"><tt class="py-string"> plasma membrane glycoprotein</tt> </tt> <a name="L856"></a><tt class="py-lineno"> 856</tt> <tt class="py-line"><tt class="py-string"> JOURNAL Genes Dev. 10 (7), 777-793 (1996)</tt> </tt> <a name="L857"></a><tt class="py-lineno"> 857</tt> <tt class="py-line"><tt class="py-string"> PUBMED 8846915</tt> </tt> <a name="L858"></a><tt class="py-lineno"> 858</tt> <tt class="py-line"><tt class="py-string">REFERENCE 3 (bases 1 to 5028)</tt> </tt> <a name="L859"></a><tt class="py-lineno"> 859</tt> <tt class="py-line"><tt class="py-string"> AUTHORS Roemer,T.</tt> </tt> <a name="L860"></a><tt class="py-lineno"> 860</tt> <tt class="py-line"><tt class="py-string"> TITLE Direct Submission</tt> </tt> <a name="L861"></a><tt class="py-lineno"> 861</tt> <tt class="py-line"><tt class="py-string"> JOURNAL Submitted (22-FEB-1996) Terry Roemer, Biology, Yale University, New</tt> </tt> <a name="L862"></a><tt class="py-lineno"> 862</tt> <tt class="py-line"><tt class="py-string"> Haven, CT, USA</tt> </tt> <a name="L863"></a><tt class="py-lineno"> 863</tt> <tt class="py-line"><tt class="py-string">FEATURES Location/Qualifiers</tt> </tt> <a name="L864"></a><tt class="py-lineno"> 864</tt> <tt class="py-line"><tt class="py-string"> source 1..5028</tt> </tt> <a name="L865"></a><tt class="py-lineno"> 865</tt> <tt class="py-line"><tt class="py-string"> /organism="Saccharomyces cerevisiae"</tt> </tt> <a name="L866"></a><tt class="py-lineno"> 866</tt> <tt class="py-line"><tt class="py-string"> /db_xref="taxon:4932"</tt> </tt> <a name="L867"></a><tt class="py-lineno"> 867</tt> <tt class="py-line"><tt class="py-string"> /chromosome="IX"</tt> </tt> <a name="L868"></a><tt class="py-lineno"> 868</tt> <tt class="py-line"><tt class="py-string"> /map="9"</tt> </tt> <a name="L869"></a><tt class="py-lineno"> 869</tt> <tt class="py-line"><tt class="py-string"> CDS <1..206</tt> </tt> <a name="L870"></a><tt class="py-lineno"> 870</tt> <tt class="py-line"><tt class="py-string"> /codon_start=3</tt> </tt> <a name="L871"></a><tt class="py-lineno"> 871</tt> <tt class="py-line"><tt class="py-string"> /product="TCP1-beta"</tt> </tt> <a name="L872"></a><tt class="py-lineno"> 872</tt> <tt class="py-line"><tt class="py-string"> /protein_id="AAA98665.1"</tt> </tt> <a name="L873"></a><tt class="py-lineno"> 873</tt> <tt class="py-line"><tt class="py-string"> /db_xref="GI:1293614"</tt> </tt> <a name="L874"></a><tt class="py-lineno"> 874</tt> <tt class="py-line"><tt class="py-string"> /translation="SSIYNGISTSGLDLNNGTIADMRQLGIVESYKLKRAVVSSASEA</tt> </tt> <a name="L875"></a><tt class="py-lineno"> 875</tt> <tt class="py-line"><tt class="py-string"> AEVLLRVDNIIRARPRTANRQHM"</tt> </tt> <a name="L876"></a><tt class="py-lineno"> 876</tt> <tt class="py-line"><tt class="py-string"> gene 687..3158</tt> </tt> <a name="L877"></a><tt class="py-lineno"> 877</tt> <tt class="py-line"><tt class="py-string"> /gene="AXL2"</tt> </tt> <a name="L878"></a><tt class="py-lineno"> 878</tt> <tt class="py-line"><tt class="py-string"> CDS 687..3158</tt> </tt> <a name="L879"></a><tt class="py-lineno"> 879</tt> <tt class="py-line"><tt class="py-string"> /gene="AXL2"</tt> </tt> <a name="L880"></a><tt class="py-lineno"> 880</tt> <tt class="py-line"><tt class="py-string"> /note="plasma membrane glycoprotein"</tt> </tt> <a name="L881"></a><tt class="py-lineno"> 881</tt> <tt class="py-line"><tt class="py-string"> /codon_start=1</tt> </tt> <a name="L882"></a><tt class="py-lineno"> 882</tt> <tt class="py-line"><tt class="py-string"> /function="required for axial budding pattern of S.</tt> </tt> <a name="L883"></a><tt class="py-lineno"> 883</tt> <tt class="py-line"><tt class="py-string"> cerevisiae"</tt> </tt> <a name="L884"></a><tt class="py-lineno"> 884</tt> <tt class="py-line"><tt class="py-string"> /product="Axl2p"</tt> </tt> <a name="L885"></a><tt class="py-lineno"> 885</tt> <tt class="py-line"><tt class="py-string"> /protein_id="AAA98666.1"</tt> </tt> <a name="L886"></a><tt class="py-lineno"> 886</tt> <tt class="py-line"><tt class="py-string"> /db_xref="GI:1293615"</tt> </tt> <a name="L887"></a><tt class="py-lineno"> 887</tt> <tt class="py-line"><tt class="py-string"> /translation="MTQLQISLLLTATISLLHLVVATPYEAYPIGKQYPPVARVNESF</tt> </tt> <a name="L888"></a><tt class="py-lineno"> 888</tt> <tt class="py-line"><tt class="py-string"> TFQISNDTYKSSVDKTAQITYNCFDLPSWLSFDSSSRTFSGEPSSDLLSDANTTLYFN</tt> </tt> <a name="L889"></a><tt class="py-lineno"> 889</tt> <tt class="py-line"><tt class="py-string"> VILEGTDSADSTSLNNTYQFVVTNRPSISLSSDFNLLALLKNYGYTNGKNALKLDPNE</tt> </tt> <a name="L890"></a><tt class="py-lineno"> 890</tt> <tt class="py-line"><tt class="py-string"> VFNVTFDRSMFTNEESIVSYYGRSQLYNAPLPNWLFFDSGELKFTGTAPVINSAIAPE</tt> </tt> <a name="L891"></a><tt class="py-lineno"> 891</tt> <tt class="py-line"><tt class="py-string"> TSYSFVIIATDIEGFSAVEVEFELVIGAHQLTTSIQNSLIINVTDTGNVSYDLPLNYV</tt> </tt> <a name="L892"></a><tt class="py-lineno"> 892</tt> <tt class="py-line"><tt class="py-string"> YLDDDPISSDKLGSINLLDAPDWVALDNATISGSVPDELLGKNSNPANFSVSIYDTYG</tt> </tt> <a name="L893"></a><tt class="py-lineno"> 893</tt> <tt class="py-line"><tt class="py-string"> DVIYFNFEVVSTTDLFAISSLPNINATRGEWFSYYFLPSQFTDYVNTNVSLEFTNSSQ</tt> </tt> <a name="L894"></a><tt class="py-lineno"> 894</tt> <tt class="py-line"><tt class="py-string"> DHDWVKFQSSNLTLAGEVPKNFDKLSLGLKANQGSQSQELYFNIIGMDSKITHSNHSA</tt> </tt> <a name="L895"></a><tt class="py-lineno"> 895</tt> <tt class="py-line"><tt class="py-string"> NATSTRSSHHSTSTSSYTSSTYTAKISSTSAAATSSAPAALPAANKTSSHNKKAVAIA</tt> </tt> <a name="L896"></a><tt class="py-lineno"> 896</tt> <tt class="py-line"><tt class="py-string"> CGVAIPLGVILVALICFLIFWRRRRENPDDENLPHAISGPDLNNPANKPNQENATPLN</tt> </tt> <a name="L897"></a><tt class="py-lineno"> 897</tt> <tt class="py-line"><tt class="py-string"> NPFDDDASSYDDTSIARRLAALNTLKLDNHSATESDISSVDEKRDSLSGMNTYNDQFQ</tt> </tt> <a name="L898"></a><tt class="py-lineno"> 898</tt> <tt class="py-line"><tt class="py-string"> SQSKEELLAKPPVQPPESPFFDPQNRSSSVYMDSEPAVNKSWRYTGNLSPVSDIVRDS</tt> </tt> <a name="L899"></a><tt class="py-lineno"> 899</tt> <tt class="py-line"><tt class="py-string"> YGSQKTVDTEKLFDLEAPEKEKRTSRDVTMSSLDPWNSNISPSPVRKSVTPSPYNVTK</tt> </tt> <a name="L900"></a><tt class="py-lineno"> 900</tt> <tt class="py-line"><tt class="py-string"> HRNRHLQNIQDSQSGKNGITPTTMSTSSSDDFVPVKDGENFCWVHSMEPDRRPSKKRL</tt> </tt> <a name="L901"></a><tt class="py-lineno"> 901</tt> <tt class="py-line"><tt class="py-string"> VDFSNKSNVNVGQVKDIHGRIPEML"</tt> </tt> <a name="L902"></a><tt class="py-lineno"> 902</tt> <tt class="py-line"><tt class="py-string"> gene complement(3300..4037)</tt> </tt> <a name="L903"></a><tt class="py-lineno"> 903</tt> <tt class="py-line"><tt class="py-string"> /gene="REV7"</tt> </tt> <a name="L904"></a><tt class="py-lineno"> 904</tt> <tt class="py-line"><tt class="py-string"> CDS complement(3300..4037)</tt> </tt> <a name="L905"></a><tt class="py-lineno"> 905</tt> <tt class="py-line"><tt class="py-string"> /gene="REV7"</tt> </tt> <a name="L906"></a><tt class="py-lineno"> 906</tt> <tt class="py-line"><tt class="py-string"> /codon_start=1</tt> </tt> <a name="L907"></a><tt class="py-lineno"> 907</tt> <tt class="py-line"><tt class="py-string"> /product="Rev7p"</tt> </tt> <a name="L908"></a><tt class="py-lineno"> 908</tt> <tt class="py-line"><tt class="py-string"> /protein_id="AAA98667.1"</tt> </tt> <a name="L909"></a><tt class="py-lineno"> 909</tt> <tt class="py-line"><tt class="py-string"> /db_xref="GI:1293616"</tt> </tt> <a name="L910"></a><tt class="py-lineno"> 910</tt> <tt class="py-line"><tt class="py-string"> /translation="MNRWVEKWLRVYLKCYINLILFYRNVYPPQSFDYTTYQSFNLPQ</tt> </tt> <a name="L911"></a><tt class="py-lineno"> 911</tt> <tt class="py-line"><tt class="py-string"> FVPINRHPALIDYIEELILDVLSKLTHVYRFSICIINKKNDLCIEKYVLDFSELQHVD</tt> </tt> <a name="L912"></a><tt class="py-lineno"> 912</tt> <tt class="py-line"><tt class="py-string"> KDDQIITETEVFDEFRSSLNSLIMHLEKLPKVNDDTITFEAVINAIELELGHKLDRNR</tt> </tt> <a name="L913"></a><tt class="py-lineno"> 913</tt> <tt class="py-line"><tt class="py-string"> RVDSLEEKAEIERDSNWVKCQEDENLPDNNGFQPPKIKLTSLVGSDVGPLIIHQFSEK</tt> </tt> <a name="L914"></a><tt class="py-lineno"> 914</tt> <tt class="py-line"><tt class="py-string"> LISGDDKILNGVYSQYEEGESIFGSLF"</tt> </tt> <a name="L915"></a><tt class="py-lineno"> 915</tt> <tt class="py-line"><tt class="py-string">ORIGIN</tt> </tt> <a name="L916"></a><tt class="py-lineno"> 916</tt> <tt class="py-line"><tt class="py-string"> 1 gatcctccat atacaacggt atctccacct caggtttaga tctcaacaac ggaaccattg</tt> </tt> <a name="L917"></a><tt class="py-lineno"> 917</tt> <tt class="py-line"><tt class="py-string"> 61 ccgacatgag acagttaggt atcgtcgaga gttacaagct aaaacgagca gtagtcagct</tt> </tt> <a name="L918"></a><tt class="py-lineno"> 918</tt> <tt class="py-line"><tt class="py-string"> 121 ctgcatctga agccgctgaa gttctactaa gggtggataa catcatccgt gcaagaccaa</tt> </tt> <a name="L919"></a><tt class="py-lineno"> 919</tt> <tt class="py-line"><tt class="py-string"> 181 gaaccgccaa tagacaacat atgtaacata tttaggatat acctcgaaaa taataaaccg</tt> </tt> <a name="L920"></a><tt class="py-lineno"> 920</tt> <tt class="py-line"><tt class="py-string"> 241 ccacactgtc attattataa ttagaaacag aacgcaaaaa ttatccacta tataattcaa</tt> </tt> <a name="L921"></a><tt class="py-lineno"> 921</tt> <tt class="py-line"><tt class="py-string"> 301 agacgcgaaa aaaaaagaac aacgcgtcat agaacttttg gcaattcgcg tcacaaataa</tt> </tt> <a name="L922"></a><tt class="py-lineno"> 922</tt> <tt class="py-line"><tt class="py-string"> 361 attttggcaa cttatgtttc ctcttcgagc agtactcgag ccctgtctca agaatgtaat</tt> </tt> <a name="L923"></a><tt class="py-lineno"> 923</tt> <tt class="py-line"><tt class="py-string"> 421 aatacccatc gtaggtatgg ttaaagatag catctccaca acctcaaagc tccttgccga</tt> </tt> <a name="L924"></a><tt class="py-lineno"> 924</tt> <tt class="py-line"><tt class="py-string"> 481 gagtcgccct cctttgtcga gtaattttca cttttcatat gagaacttat tttcttattc</tt> </tt> <a name="L925"></a><tt class="py-lineno"> 925</tt> <tt class="py-line"><tt class="py-string"> 541 tttactctca catcctgtag tgattgacac tgcaacagcc accatcacta gaagaacaga</tt> </tt> <a name="L926"></a><tt class="py-lineno"> 926</tt> <tt class="py-line"><tt class="py-string"> 601 acaattactt aatagaaaaa ttatatcttc ctcgaaacga tttcctgctt ccaacatcta</tt> </tt> <a name="L927"></a><tt class="py-lineno"> 927</tt> <tt class="py-line"><tt class="py-string"> 661 cgtatatcaa gaagcattca cttaccatga cacagcttca gatttcatta ttgctgacag</tt> </tt> <a name="L928"></a><tt class="py-lineno"> 928</tt> <tt class="py-line"><tt class="py-string"> 721 ctactatatc actactccat ctagtagtgg ccacgcccta tgaggcatat cctatcggaa</tt> </tt> <a name="L929"></a><tt class="py-lineno"> 929</tt> <tt class="py-line"><tt class="py-string"> 781 aacaataccc cccagtggca agagtcaatg aatcgtttac atttcaaatt tccaatgata</tt> </tt> <a name="L930"></a><tt class="py-lineno"> 930</tt> <tt class="py-line"><tt class="py-string"> 841 cctataaatc gtctgtagac aagacagctc aaataacata caattgcttc gacttaccga</tt> </tt> <a name="L931"></a><tt class="py-lineno"> 931</tt> <tt class="py-line"><tt class="py-string"> 901 gctggctttc gtttgactct agttctagaa cgttctcagg tgaaccttct tctgacttac</tt> </tt> <a name="L932"></a><tt class="py-lineno"> 932</tt> <tt class="py-line"><tt class="py-string"> 961 tatctgatgc gaacaccacg ttgtatttca atgtaatact cgagggtacg gactctgccg</tt> </tt> <a name="L933"></a><tt class="py-lineno"> 933</tt> <tt class="py-line"><tt class="py-string"> 1021 acagcacgtc tttgaacaat acataccaat ttgttgttac aaaccgtcca tccatctcgc</tt> </tt> <a name="L934"></a><tt class="py-lineno"> 934</tt> <tt class="py-line"><tt class="py-string"> 1081 tatcgtcaga tttcaatcta ttggcgttgt taaaaaacta tggttatact aacggcaaaa</tt> </tt> <a name="L935"></a><tt class="py-lineno"> 935</tt> <tt class="py-line"><tt class="py-string"> 1141 acgctctgaa actagatcct aatgaagtct tcaacgtgac ttttgaccgt tcaatgttca</tt> </tt> <a name="L936"></a><tt class="py-lineno"> 936</tt> <tt class="py-line"><tt class="py-string"> 1201 ctaacgaaga atccattgtg tcgtattacg gacgttctca gttgtataat gcgccgttac</tt> </tt> <a name="L937"></a><tt class="py-lineno"> 937</tt> <tt class="py-line"><tt class="py-string"> 1261 ccaattggct gttcttcgat tctggcgagt tgaagtttac tgggacggca ccggtgataa</tt> </tt> <a name="L938"></a><tt class="py-lineno"> 938</tt> <tt class="py-line"><tt class="py-string"> 1321 actcggcgat tgctccagaa acaagctaca gttttgtcat catcgctaca gacattgaag</tt> </tt> <a name="L939"></a><tt class="py-lineno"> 939</tt> <tt class="py-line"><tt class="py-string"> 1381 gattttctgc cgttgaggta gaattcgaat tagtcatcgg ggctcaccag ttaactacct</tt> </tt> <a name="L940"></a><tt class="py-lineno"> 940</tt> <tt class="py-line"><tt class="py-string"> 1441 ctattcaaaa tagtttgata atcaacgtta ctgacacagg taacgtttca tatgacttac</tt> </tt> <a name="L941"></a><tt class="py-lineno"> 941</tt> <tt class="py-line"><tt class="py-string"> 1501 ctctaaacta tgtttatctc gatgacgatc ctatttcttc tgataaattg ggttctataa</tt> </tt> <a name="L942"></a><tt class="py-lineno"> 942</tt> <tt class="py-line"><tt class="py-string"> 1561 acttattgga tgctccagac tgggtggcat tagataatgc taccatttcc gggtctgtcc</tt> </tt> <a name="L943"></a><tt class="py-lineno"> 943</tt> <tt class="py-line"><tt class="py-string"> 1621 cagatgaatt actcggtaag aactccaatc ctgccaattt ttctgtgtcc atttatgata</tt> </tt> <a name="L944"></a><tt class="py-lineno"> 944</tt> <tt class="py-line"><tt class="py-string"> 1681 cttatggtga tgtgatttat ttcaacttcg aagttgtctc cacaacggat ttgtttgcca</tt> </tt> <a name="L945"></a><tt class="py-lineno"> 945</tt> <tt class="py-line"><tt class="py-string"> 1741 ttagttctct tcccaatatt aacgctacaa ggggtgaatg gttctcctac tattttttgc</tt> </tt> <a name="L946"></a><tt class="py-lineno"> 946</tt> <tt class="py-line"><tt class="py-string"> 1801 cttctcagtt tacagactac gtgaatacaa acgtttcatt agagtttact aattcaagcc</tt> </tt> <a name="L947"></a><tt class="py-lineno"> 947</tt> <tt class="py-line"><tt class="py-string"> 1861 aagaccatga ctgggtgaaa ttccaatcat ctaatttaac attagctgga gaagtgccca</tt> </tt> <a name="L948"></a><tt class="py-lineno"> 948</tt> <tt class="py-line"><tt class="py-string"> 1921 agaatttcga caagctttca ttaggtttga aagcgaacca aggttcacaa tctcaagagc</tt> </tt> <a name="L949"></a><tt class="py-lineno"> 949</tt> <tt class="py-line"><tt class="py-string"> 1981 tatattttaa catcattggc atggattcaa agataactca ctcaaaccac agtgcgaatg</tt> </tt> <a name="L950"></a><tt class="py-lineno"> 950</tt> <tt class="py-line"><tt class="py-string"> 2041 caacgtccac aagaagttct caccactcca cctcaacaag ttcttacaca tcttctactt</tt> </tt> <a name="L951"></a><tt class="py-lineno"> 951</tt> <tt class="py-line"><tt class="py-string"> 2101 acactgcaaa aatttcttct acctccgctg ctgctacttc ttctgctcca gcagcgctgc</tt> </tt> <a name="L952"></a><tt class="py-lineno"> 952</tt> <tt class="py-line"><tt class="py-string"> 2161 cagcagccaa taaaacttca tctcacaata aaaaagcagt agcaattgcg tgcggtgttg</tt> </tt> <a name="L953"></a><tt class="py-lineno"> 953</tt> <tt class="py-line"><tt class="py-string"> 2221 ctatcccatt aggcgttatc ctagtagctc tcatttgctt cctaatattc tggagacgca</tt> </tt> <a name="L954"></a><tt class="py-lineno"> 954</tt> <tt class="py-line"><tt class="py-string"> 2281 gaagggaaaa tccagacgat gaaaacttac cgcatgctat tagtggacct gatttgaata</tt> </tt> <a name="L955"></a><tt class="py-lineno"> 955</tt> <tt class="py-line"><tt class="py-string"> 2341 atcctgcaaa taaaccaaat caagaaaacg ctacaccttt gaacaacccc tttgatgatg</tt> </tt> <a name="L956"></a><tt class="py-lineno"> 956</tt> <tt class="py-line"><tt class="py-string"> 2401 atgcttcctc gtacgatgat acttcaatag caagaagatt ggctgctttg aacactttga</tt> </tt> <a name="L957"></a><tt class="py-lineno"> 957</tt> <tt class="py-line"><tt class="py-string"> 2461 aattggataa ccactctgcc actgaatctg atatttccag cgtggatgaa aagagagatt</tt> </tt> <a name="L958"></a><tt class="py-lineno"> 958</tt> <tt class="py-line"><tt class="py-string"> 2521 ctctatcagg tatgaataca tacaatgatc agttccaatc ccaaagtaaa gaagaattat</tt> </tt> <a name="L959"></a><tt class="py-lineno"> 959</tt> <tt class="py-line"><tt class="py-string"> 2581 tagcaaaacc cccagtacag cctccagaga gcccgttctt tgacccacag aataggtctt</tt> </tt> <a name="L960"></a><tt class="py-lineno"> 960</tt> <tt class="py-line"><tt class="py-string"> 2641 cttctgtgta tatggatagt gaaccagcag taaataaatc ctggcgatat actggcaacc</tt> </tt> <a name="L961"></a><tt class="py-lineno"> 961</tt> <tt class="py-line"><tt class="py-string"> 2701 tgtcaccagt ctctgatatt gtcagagaca gttacggatc acaaaaaact gttgatacag</tt> </tt> <a name="L962"></a><tt class="py-lineno"> 962</tt> <tt class="py-line"><tt class="py-string"> 2761 aaaaactttt cgatttagaa gcaccagaga aggaaaaacg tacgtcaagg gatgtcacta</tt> </tt> <a name="L963"></a><tt class="py-lineno"> 963</tt> <tt class="py-line"><tt class="py-string"> 2821 tgtcttcact ggacccttgg aacagcaata ttagcccttc tcccgtaaga aaatcagtaa</tt> </tt> <a name="L964"></a><tt class="py-lineno"> 964</tt> <tt class="py-line"><tt class="py-string"> 2881 caccatcacc atataacgta acgaagcatc gtaaccgcca cttacaaaat attcaagact</tt> </tt> <a name="L965"></a><tt class="py-lineno"> 965</tt> <tt class="py-line"><tt class="py-string"> 2941 ctcaaagcgg taaaaacgga atcactccca caacaatgtc aacttcatct tctgacgatt</tt> </tt> <a name="L966"></a><tt class="py-lineno"> 966</tt> <tt class="py-line"><tt class="py-string"> 3001 ttgttccggt taaagatggt gaaaattttt gctgggtcca tagcatggaa ccagacagaa</tt> </tt> <a name="L967"></a><tt class="py-lineno"> 967</tt> <tt class="py-line"><tt class="py-string"> 3061 gaccaagtaa gaaaaggtta gtagattttt caaataagag taatgtcaat gttggtcaag</tt> </tt> <a name="L968"></a><tt class="py-lineno"> 968</tt> <tt class="py-line"><tt class="py-string"> 3121 ttaaggacat tcacggacgc atcccagaaa tgctgtgatt atacgcaacg atattttgct</tt> </tt> <a name="L969"></a><tt class="py-lineno"> 969</tt> <tt class="py-line"><tt class="py-string"> 3181 taattttatt ttcctgtttt attttttatt agtggtttac agatacccta tattttattt</tt> </tt> <a name="L970"></a><tt class="py-lineno"> 970</tt> <tt class="py-line"><tt class="py-string"> 3241 agtttttata cttagagaca tttaatttta attccattct tcaaatttca tttttgcact</tt> </tt> <a name="L971"></a><tt class="py-lineno"> 971</tt> <tt class="py-line"><tt class="py-string"> 3301 taaaacaaag atccaaaaat gctctcgccc tcttcatatt gagaatacac tccattcaaa</tt> </tt> <a name="L972"></a><tt class="py-lineno"> 972</tt> <tt class="py-line"><tt class="py-string"> 3361 attttgtcgt caccgctgat taatttttca ctaaactgat gaataatcaa aggccccacg</tt> </tt> <a name="L973"></a><tt class="py-lineno"> 973</tt> <tt class="py-line"><tt class="py-string"> 3421 tcagaaccga ctaaagaagt gagttttatt ttaggaggtt gaaaaccatt attgtctggt</tt> </tt> <a name="L974"></a><tt class="py-lineno"> 974</tt> <tt class="py-line"><tt class="py-string"> 3481 aaattttcat cttcttgaca tttaacccag tttgaatccc tttcaatttc tgctttttcc</tt> </tt> <a name="L975"></a><tt class="py-lineno"> 975</tt> <tt class="py-line"><tt class="py-string"> 3541 tccaaactat cgaccctcct gtttctgtcc aacttatgtc ctagttccaa ttcgatcgca</tt> </tt> <a name="L976"></a><tt class="py-lineno"> 976</tt> <tt class="py-line"><tt class="py-string"> 3601 ttaataactg cttcaaatgt tattgtgtca tcgttgactt taggtaattt ctccaaatgc</tt> </tt> <a name="L977"></a><tt class="py-lineno"> 977</tt> <tt class="py-line"><tt class="py-string"> 3661 ataatcaaac tatttaagga agatcggaat tcgtcgaaca cttcagtttc cgtaatgatc</tt> </tt> <a name="L978"></a><tt class="py-lineno"> 978</tt> <tt class="py-line"><tt class="py-string"> 3721 tgatcgtctt tatccacatg ttgtaattca ctaaaatcta aaacgtattt ttcaatgcat</tt> </tt> <a name="L979"></a><tt class="py-lineno"> 979</tt> <tt class="py-line"><tt class="py-string"> 3781 aaatcgttct ttttattaat aatgcagatg gaaaatctgt aaacgtgcgt taatttagaa</tt> </tt> <a name="L980"></a><tt class="py-lineno"> 980</tt> <tt class="py-line"><tt class="py-string"> 3841 agaacatcca gtataagttc ttctatatag tcaattaaag caggatgcct attaatggga</tt> </tt> <a name="L981"></a><tt class="py-lineno"> 981</tt> <tt class="py-line"><tt class="py-string"> 3901 acgaactgcg gcaagttgaa tgactggtaa gtagtgtagt cgaatgactg aggtgggtat</tt> </tt> <a name="L982"></a><tt class="py-lineno"> 982</tt> <tt class="py-line"><tt class="py-string"> 3961 acatttctat aaaataaaat caaattaatg tagcatttta agtataccct cagccacttc</tt> </tt> <a name="L983"></a><tt class="py-lineno"> 983</tt> <tt class="py-line"><tt class="py-string"> 4021 tctacccatc tattcataaa gctgacgcaa cgattactat tttttttttc ttcttggatc</tt> </tt> <a name="L984"></a><tt class="py-lineno"> 984</tt> <tt class="py-line"><tt class="py-string"> 4081 tcagtcgtcg caaaaacgta taccttcttt ttccgacctt ttttttagct ttctggaaaa</tt> </tt> <a name="L985"></a><tt class="py-lineno"> 985</tt> <tt class="py-line"><tt class="py-string"> 4141 gtttatatta gttaaacagg gtctagtctt agtgtgaaag ctagtggttt cgattgactg</tt> </tt> <a name="L986"></a><tt class="py-lineno"> 986</tt> <tt class="py-line"><tt class="py-string"> 4201 atattaagaa agtggaaatt aaattagtag tgtagacgta tatgcatatg tatttctcgc</tt> </tt> <a name="L987"></a><tt class="py-lineno"> 987</tt> <tt class="py-line"><tt class="py-string"> 4261 ctgtttatgt ttctacgtac ttttgattta tagcaagggg aaaagaaata catactattt</tt> </tt> <a name="L988"></a><tt class="py-lineno"> 988</tt> <tt class="py-line"><tt class="py-string"> 4321 tttggtaaag gtgaaagcat aatgtaaaag ctagaataaa atggacgaaa taaagagagg</tt> </tt> <a name="L989"></a><tt class="py-lineno"> 989</tt> <tt class="py-line"><tt class="py-string"> 4381 cttagttcat cttttttcca aaaagcaccc aatgataata actaaaatga aaaggatttg</tt> </tt> <a name="L990"></a><tt class="py-lineno"> 990</tt> <tt class="py-line"><tt class="py-string"> 4441 ccatctgtca gcaacatcag ttgtgtgagc aataataaaa tcatcacctc cgttgccttt</tt> </tt> <a name="L991"></a><tt class="py-lineno"> 991</tt> <tt class="py-line"><tt class="py-string"> 4501 agcgcgtttg tcgtttgtat cttccgtaat tttagtctta tcaatgggaa tcataaattt</tt> </tt> <a name="L992"></a><tt class="py-lineno"> 992</tt> <tt class="py-line"><tt class="py-string"> 4561 tccaatgaat tagcaatttc gtccaattct ttttgagctt cttcatattt gctttggaat</tt> </tt> <a name="L993"></a><tt class="py-lineno"> 993</tt> <tt class="py-line"><tt class="py-string"> 4621 tcttcgcact tcttttccca ttcatctctt tcttcttcca aagcaacgat ccttctaccc</tt> </tt> <a name="L994"></a><tt class="py-lineno"> 994</tt> <tt class="py-line"><tt class="py-string"> 4681 atttgctcag agttcaaatc ggcctctttc agtttatcca ttgcttcctt cagtttggct</tt> </tt> <a name="L995"></a><tt class="py-lineno"> 995</tt> <tt class="py-line"><tt class="py-string"> 4741 tcactgtctt ctagctgttg ttctagatcc tggtttttct tggtgtagtt ctcattatta</tt> </tt> <a name="L996"></a><tt class="py-lineno"> 996</tt> <tt class="py-line"><tt class="py-string"> 4801 gatctcaagt tattggagtc ttcagccaat tgctttgtat cagacaattg actctctaac</tt> </tt> <a name="L997"></a><tt class="py-lineno"> 997</tt> <tt class="py-line"><tt class="py-string"> 4861 ttctccactt cactgtcgag ttgctcgttt ttagcggaca aagatttaat ctcgttttct</tt> </tt> <a name="L998"></a><tt class="py-lineno"> 998</tt> <tt class="py-line"><tt class="py-string"> 4921 ttttcagtgt tagattgctc taattctttg agctgttctc tcagctcctc atatttttct</tt> </tt> <a name="L999"></a><tt class="py-lineno"> 999</tt> <tt class="py-line"><tt class="py-string"> 4981 tgccatgact cagattctaa ttttaagcta ttcaatttct ctttgatc</tt> </tt> <a name="L1000"></a><tt class="py-lineno">1000</tt> <tt class="py-line"><tt class="py-string">//"""</tt> </tt> <a name="L1001"></a><tt class="py-lineno">1001</tt> <tt class="py-line"> </tt> <a name="L1002"></a><tt class="py-lineno">1002</tt> <tt class="py-line"> <tt class="py-comment"># GenBank format protein (aka GenPept) file from:</tt> </tt> <a name="L1003"></a><tt class="py-lineno">1003</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-comment"># http://www.molecularevolution.org/resources/fileformats/</tt> </tt> <a name="L1004"></a><tt class="py-lineno">1004</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-name">gbk_example2</tt> <tt class="py-op">=</tt> \ </tt> <a name="L1005"></a><tt class="py-lineno">1005</tt> <tt class="py-line"><tt class="py-string">"""LOCUS AAD51968 143 aa linear BCT 21-AUG-2001</tt> </tt> <a name="L1006"></a><tt class="py-lineno">1006</tt> <tt class="py-line"><tt class="py-string">DEFINITION transcriptional regulator RovA [Yersinia enterocolitica].</tt> </tt> <a name="L1007"></a><tt class="py-lineno">1007</tt> <tt class="py-line"><tt class="py-string">ACCESSION AAD51968</tt> </tt> <a name="L1008"></a><tt class="py-lineno">1008</tt> <tt class="py-line"><tt class="py-string">VERSION AAD51968.1 GI:5805369</tt> </tt> <a name="L1009"></a><tt class="py-lineno">1009</tt> <tt class="py-line"><tt class="py-string">DBSOURCE locus AF171097 accession AF171097.1</tt> </tt> <a name="L1010"></a><tt class="py-lineno">1010</tt> <tt class="py-line"><tt class="py-string">KEYWORDS .</tt> </tt> <a name="L1011"></a><tt class="py-lineno">1011</tt> <tt class="py-line"><tt class="py-string">SOURCE Yersinia enterocolitica</tt> </tt> <a name="L1012"></a><tt class="py-lineno">1012</tt> <tt class="py-line"><tt class="py-string"> ORGANISM Yersinia enterocolitica</tt> </tt> <a name="L1013"></a><tt class="py-lineno">1013</tt> <tt class="py-line"><tt class="py-string"> Bacteria; Proteobacteria; Gammaproteobacteria; Enterobacteriales;</tt> </tt> <a name="L1014"></a><tt class="py-lineno">1014</tt> <tt class="py-line"><tt class="py-string"> Enterobacteriaceae; Yersinia.</tt> </tt> <a name="L1015"></a><tt class="py-lineno">1015</tt> <tt class="py-line"><tt class="py-string">REFERENCE 1 (residues 1 to 143)</tt> </tt> <a name="L1016"></a><tt class="py-lineno">1016</tt> <tt class="py-line"><tt class="py-string"> AUTHORS Revell,P.A. and Miller,V.L.</tt> </tt> <a name="L1017"></a><tt class="py-lineno">1017</tt> <tt class="py-line"><tt class="py-string"> TITLE A chromosomally encoded regulator is required for expression of the</tt> </tt> <a name="L1018"></a><tt class="py-lineno">1018</tt> <tt class="py-line"><tt class="py-string"> Yersinia enterocolitica inv gene and for virulence</tt> </tt> <a name="L1019"></a><tt class="py-lineno">1019</tt> <tt class="py-line"><tt class="py-string"> JOURNAL Mol. Microbiol. 35 (3), 677-685 (2000)</tt> </tt> <a name="L1020"></a><tt class="py-lineno">1020</tt> <tt class="py-line"><tt class="py-string"> MEDLINE 20138369</tt> </tt> <a name="L1021"></a><tt class="py-lineno">1021</tt> <tt class="py-line"><tt class="py-string"> PUBMED 10672189</tt> </tt> <a name="L1022"></a><tt class="py-lineno">1022</tt> <tt class="py-line"><tt class="py-string">REFERENCE 2 (residues 1 to 143)</tt> </tt> <a name="L1023"></a><tt class="py-lineno">1023</tt> <tt class="py-line"><tt class="py-string"> AUTHORS Revell,P.A. and Miller,V.L.</tt> </tt> <a name="L1024"></a><tt class="py-lineno">1024</tt> <tt class="py-line"><tt class="py-string"> TITLE Direct Submission</tt> </tt> <a name="L1025"></a><tt class="py-lineno">1025</tt> <tt class="py-line"><tt class="py-string"> JOURNAL Submitted (22-JUL-1999) Molecular Microbiology, Washington</tt> </tt> <a name="L1026"></a><tt class="py-lineno">1026</tt> <tt class="py-line"><tt class="py-string"> University School of Medicine, Campus Box 8230, 660 South Euclid,</tt> </tt> <a name="L1027"></a><tt class="py-lineno">1027</tt> <tt class="py-line"><tt class="py-string"> St. Louis, MO 63110, USA</tt> </tt> <a name="L1028"></a><tt class="py-lineno">1028</tt> <tt class="py-line"><tt class="py-string">COMMENT Method: conceptual translation.</tt> </tt> <a name="L1029"></a><tt class="py-lineno">1029</tt> <tt class="py-line"><tt class="py-string">FEATURES Location/Qualifiers</tt> </tt> <a name="L1030"></a><tt class="py-lineno">1030</tt> <tt class="py-line"><tt class="py-string"> source 1..143</tt> </tt> <a name="L1031"></a><tt class="py-lineno">1031</tt> <tt class="py-line"><tt class="py-string"> /organism="Yersinia enterocolitica"</tt> </tt> <a name="L1032"></a><tt class="py-lineno">1032</tt> <tt class="py-line"><tt class="py-string"> /mol_type="unassigned DNA"</tt> </tt> <a name="L1033"></a><tt class="py-lineno">1033</tt> <tt class="py-line"><tt class="py-string"> /strain="JB580v"</tt> </tt> <a name="L1034"></a><tt class="py-lineno">1034</tt> <tt class="py-line"><tt class="py-string"> /serotype="O:8"</tt> </tt> <a name="L1035"></a><tt class="py-lineno">1035</tt> <tt class="py-line"><tt class="py-string"> /db_xref="taxon:630"</tt> </tt> <a name="L1036"></a><tt class="py-lineno">1036</tt> <tt class="py-line"><tt class="py-string"> Protein 1..143</tt> </tt> <a name="L1037"></a><tt class="py-lineno">1037</tt> <tt class="py-line"><tt class="py-string"> /product="transcriptional regulator RovA"</tt> </tt> <a name="L1038"></a><tt class="py-lineno">1038</tt> <tt class="py-line"><tt class="py-string"> /name="regulates inv expression"</tt> </tt> <a name="L1039"></a><tt class="py-lineno">1039</tt> <tt class="py-line"><tt class="py-string"> CDS 1..143</tt> </tt> <a name="L1040"></a><tt class="py-lineno">1040</tt> <tt class="py-line"><tt class="py-string"> /gene="rovA"</tt> </tt> <a name="L1041"></a><tt class="py-lineno">1041</tt> <tt class="py-line"><tt class="py-string"> /coded_by="AF171097.1:380..811"</tt> </tt> <a name="L1042"></a><tt class="py-lineno">1042</tt> <tt class="py-line"><tt class="py-string"> /note="regulator of virulence"</tt> </tt> <a name="L1043"></a><tt class="py-lineno">1043</tt> <tt class="py-line"><tt class="py-string"> /transl_table=11</tt> </tt> <a name="L1044"></a><tt class="py-lineno">1044</tt> <tt class="py-line"><tt class="py-string">ORIGIN </tt> </tt> <a name="L1045"></a><tt class="py-lineno">1045</tt> <tt class="py-line"><tt class="py-string"> 1 mestlgsdla rlvrvwrali dhrlkplelt qthwvtlhni nrlppeqsqi qlakaigieq</tt> </tt> <a name="L1046"></a><tt class="py-lineno">1046</tt> <tt class="py-line"><tt class="py-string"> 61 pslvrtldql eekglitrht candrrakri klteqsspii eqvdgvicst rkeilggisp</tt> </tt> <a name="L1047"></a><tt class="py-lineno">1047</tt> <tt class="py-line"><tt class="py-string"> 121 deiellsgli dklerniiql qsk</tt> </tt> <a name="L1048"></a><tt class="py-lineno">1048</tt> <tt class="py-line"><tt class="py-string">//"""</tt> </tt> <a name="L1049"></a><tt class="py-lineno">1049</tt> <tt class="py-line"> </tt> <a name="L1050"></a><tt class="py-lineno">1050</tt> <tt class="py-line"> </tt> <a name="L1051"></a><tt class="py-lineno">1051</tt> <tt class="py-line"> </tt> <a name="L1052"></a><tt class="py-lineno">1052</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"#########################################################"</tt> </tt> <a name="L1053"></a><tt class="py-lineno">1053</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"# Sequence Input Tests #"</tt> </tt> <a name="L1054"></a><tt class="py-lineno">1054</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"#########################################################"</tt> </tt> <a name="L1055"></a><tt class="py-lineno">1055</tt> <tt class="py-line"> </tt> <a name="L1056"></a><tt class="py-lineno">1056</tt> <tt class="py-line"> <tt class="py-comment">#ToDo - Check alphabet, or at least DNA/amino acid, for those</tt> </tt> <a name="L1057"></a><tt class="py-lineno">1057</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-comment"># filetype that specify it (e.g. Nexus, GenBank)</tt> </tt> <a name="L1058"></a><tt class="py-lineno">1058</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-name">tests</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> </tt> <a name="L1059"></a><tt class="py-lineno">1059</tt> <tt class="py-line"> <tt class="py-op">(</tt><tt class="py-name">aln_example</tt><tt class="py-op">,</tt> <tt class="py-string">"clustal"</tt><tt class="py-op">,</tt> <tt class="py-number">8</tt><tt class="py-op">,</tt> <tt class="py-string">"HISJ_E_COLI"</tt><tt class="py-op">,</tt> </tt> <a name="L1060"></a><tt class="py-lineno">1060</tt> <tt class="py-line"> <tt class="py-string">"MKKLVLSLSLVLAFSSATAAF-------------------AAIPQNIRIG"</tt> <tt class="py-op">+</tt> \ </tt> <a name="L1061"></a><tt class="py-lineno">1061</tt> <tt class="py-line"> <tt class="py-string">"TDPTYAPFESKNS-QGELVGFDIDLAKELCKRINTQCTFVENPLDALIPS"</tt> <tt class="py-op">+</tt> \ </tt> <a name="L1062"></a><tt class="py-lineno">1062</tt> <tt class="py-line"> <tt class="py-string">"LKAKKIDAIMSSLSITEKRQQEIAFTDKLYAADSRLVVAKNSDIQP-TVE"</tt> <tt class="py-op">+</tt> \ </tt> <a name="L1063"></a><tt class="py-lineno">1063</tt> <tt class="py-line"> <tt class="py-string">"SLKGKRVGVLQGTTQETFGNEHWAPKGIEIVSYQGQDNIYSDLTAGRIDA"</tt> <tt class="py-op">+</tt> \ </tt> <a name="L1064"></a><tt class="py-lineno">1064</tt> <tt class="py-line"> <tt class="py-string">"AFQDEVAASEGFLKQPVGKDYKFGGPSVKDEKLFGVGTGMGLRKED--NE"</tt> <tt class="py-op">+</tt> \ </tt> <a name="L1065"></a><tt class="py-lineno">1065</tt> <tt class="py-line"> <tt class="py-string">"LREALNKAFAEMRADGTYEKLAKKYFDFDVYGG---"</tt><tt class="py-op">,</tt> <tt id="link-137" class="py-name"><a title="Bio.EUtils.POM.True" class="py-name" href="#" onclick="return doclink('link-137', 'True', 'link-136');">True</a></tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt> <a name="L1066"></a><tt class="py-lineno">1066</tt> <tt class="py-line"> <tt class="py-op">(</tt><tt class="py-name">phy_example</tt><tt class="py-op">,</tt> <tt class="py-string">"phylip"</tt><tt class="py-op">,</tt> <tt class="py-number">8</tt><tt class="py-op">,</tt> <tt class="py-string">"HISJ_E_COL"</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt><tt class="py-op">,</tt> <tt id="link-138" class="py-name"><a title="Bio.EUtils.POM.False" class="py-name" href="#" onclick="return doclink('link-138', 'False', 'link-127');">False</a></tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt> <a name="L1067"></a><tt class="py-lineno">1067</tt> <tt class="py-line"> <tt class="py-op">(</tt><tt class="py-name">nxs_example</tt><tt class="py-op">,</tt> <tt class="py-string">"nexus"</tt><tt class="py-op">,</tt> <tt class="py-number">8</tt><tt class="py-op">,</tt> <tt class="py-string">"HISJ_E_COLI"</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt><tt class="py-op">,</tt> <tt id="link-139" class="py-name"><a title="Bio.EUtils.POM.True" class="py-name" href="#" onclick="return doclink('link-139', 'True', 'link-136');">True</a></tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt> <a name="L1068"></a><tt class="py-lineno">1068</tt> <tt class="py-line"> <tt class="py-op">(</tt><tt class="py-name">nxs_example2</tt><tt class="py-op">,</tt> <tt class="py-string">"nexus"</tt><tt class="py-op">,</tt> <tt class="py-number">10</tt><tt class="py-op">,</tt> <tt class="py-string">"Frog"</tt><tt class="py-op">,</tt> </tt> <a name="L1069"></a><tt class="py-lineno">1069</tt> <tt class="py-line"> <tt class="py-string">"ATGGCACACCCATCACAATTAGGTTTTCAAGACGCAGCCTCTCCAATTATAGAAGAATTA"</tt> <tt class="py-op">+</tt> \ </tt> <a name="L1070"></a><tt class="py-lineno">1070</tt> <tt class="py-line"> <tt class="py-string">"CTTCACTTCCACGACCATACCCTCATAGCCGTTTTTCTTATTAGTACGCTAGTTCTTTAC"</tt> <tt class="py-op">+</tt> \ </tt> <a name="L1071"></a><tt class="py-lineno">1071</tt> <tt class="py-line"> <tt class="py-string">"ATTATTACTATTATAATAACTACTAAACTAACTAATACAAACCTAATGGACGCACAAGAG"</tt> <tt class="py-op">+</tt> \ </tt> <a name="L1072"></a><tt class="py-lineno">1072</tt> <tt class="py-line"> <tt class="py-string">"ATCGAAATAGTGTGAACTATTATACCAGCTATTAGCCTCATCATAATTGCCCTTCCATCC"</tt> <tt class="py-op">+</tt> \ </tt> <a name="L1073"></a><tt class="py-lineno">1073</tt> <tt class="py-line"> <tt class="py-string">"CTTCGTATCCTATATTTAATAGATGAAGTTAATGATCCACACTTAACAATTAAAGCAATC"</tt> <tt class="py-op">+</tt> \ </tt> <a name="L1074"></a><tt class="py-lineno">1074</tt> <tt class="py-line"> <tt class="py-string">"GGCCACCAATGATACTGAAGCTACGAATATACTAACTATGAGGATCTCTCATTTGACTCT"</tt> <tt class="py-op">+</tt> \ </tt> <a name="L1075"></a><tt class="py-lineno">1075</tt> <tt class="py-line"> <tt class="py-string">"TATATAATTCCAACTAATGACCTTACCCCTGGACAATTCCGGCTGCTAGAAGTTGATAAT"</tt> <tt class="py-op">+</tt> \ </tt> <a name="L1076"></a><tt class="py-lineno">1076</tt> <tt class="py-line"> <tt class="py-string">"CGAATAGTAGTCCCAATAGAATCTCCAACCCGACTTTTAGTTACAGCCGAAGACGTCCTC"</tt> <tt class="py-op">+</tt> \ </tt> <a name="L1077"></a><tt class="py-lineno">1077</tt> <tt class="py-line"> <tt class="py-string">"CACTCGTGAGCTGTACCCTCCTTGGGTGTCAAAACAGATGCAATCCCAGGACGACTTCAT"</tt> <tt class="py-op">+</tt> \ </tt> <a name="L1078"></a><tt class="py-lineno">1078</tt> <tt class="py-line"> <tt class="py-string">"CAAACATCATTTATTGCTACTCGTCCGGGAGTATTTTACGGACAATGTTCAGAAATTTGC"</tt> <tt class="py-op">+</tt> \ </tt> <a name="L1079"></a><tt class="py-lineno">1079</tt> <tt class="py-line"> <tt class="py-string">"GGAGCAAACCACAGCTTTATACCAATTGTAGTTGAAGCAGTACCGCTAACCGACTTTGAA"</tt> <tt class="py-op">+</tt> \ </tt> <a name="L1080"></a><tt class="py-lineno">1080</tt> <tt class="py-line"> <tt class="py-string">"AACTGATCTTCATCAATACTA---GAAGCATCACTA------AGA"</tt><tt class="py-op">,</tt> <tt id="link-140" class="py-name"><a title="Bio.EUtils.POM.True" class="py-name" href="#" onclick="return doclink('link-140', 'True', 'link-136');">True</a></tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt> <a name="L1081"></a><tt class="py-lineno">1081</tt> <tt class="py-line"> <tt class="py-op">(</tt><tt class="py-name">nxs_example3</tt><tt class="py-op">,</tt> <tt class="py-string">"nexus"</tt><tt class="py-op">,</tt> <tt class="py-number">10</tt><tt class="py-op">,</tt> <tt class="py-string">"Frog"</tt><tt class="py-op">,</tt> </tt> <a name="L1082"></a><tt class="py-lineno">1082</tt> <tt class="py-line"> <tt class="py-string">'MAHPSQLGFQDAASPIMEELLHFHDHTLMAVFLISTLVLYIITIMMTTKLTNTNLMDAQE'</tt> <tt class="py-op">+</tt> \ </tt> <a name="L1083"></a><tt class="py-lineno">1083</tt> <tt class="py-line"> <tt class="py-string">'IEMVWTIMPAISLIMIALPSLRILYLMDEVNDPHLTIKAIGHQWYWSYEYTNYEDLSFDS'</tt> <tt class="py-op">+</tt> \ </tt> <a name="L1084"></a><tt class="py-lineno">1084</tt> <tt class="py-line"> <tt class="py-string">'YMIPTNDLTPGQFRLLEVDNRMVVPMESPTRLLVTAEDVLHSWAVPSLGVKTDAIPGRLH'</tt> <tt class="py-op">+</tt> \ </tt> <a name="L1085"></a><tt class="py-lineno">1085</tt> <tt class="py-line"> <tt class="py-string">'QTSFIATRPGVFYGQCSEICGANHSFMPIVVEAVPLTDFENWSSSML-EASL--'</tt><tt class="py-op">,</tt> <tt id="link-141" class="py-name"><a title="Bio.EUtils.POM.True" class="py-name" href="#" onclick="return doclink('link-141', 'True', 'link-136');">True</a></tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt> <a name="L1086"></a><tt class="py-lineno">1086</tt> <tt class="py-line"> <tt class="py-op">(</tt><tt class="py-name">sth_example</tt><tt class="py-op">,</tt> <tt class="py-string">"stockholm"</tt><tt class="py-op">,</tt> <tt class="py-number">5</tt><tt class="py-op">,</tt> <tt class="py-string">"O31699/88-139"</tt><tt class="py-op">,</tt> </tt> <a name="L1087"></a><tt class="py-lineno">1087</tt> <tt class="py-line"> <tt class="py-string">'EVMLTDIPRLHINDPIMK--GFGMVINN------GFVCVENDE'</tt><tt class="py-op">,</tt> <tt id="link-142" class="py-name"><a title="Bio.EUtils.POM.True" class="py-name" href="#" onclick="return doclink('link-142', 'True', 'link-136');">True</a></tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt> <a name="L1088"></a><tt class="py-lineno">1088</tt> <tt class="py-line"> <tt class="py-op">(</tt><tt class="py-name">sth_example2</tt><tt class="py-op">,</tt> <tt class="py-string">"stockholm"</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">,</tt> <tt class="py-string">"AE007476.1"</tt><tt class="py-op">,</tt> </tt> <a name="L1089"></a><tt class="py-lineno">1089</tt> <tt class="py-line"> <tt class="py-string">'AAAAUUGAAUAUCGUUUUACUUGUUUAU-GUCGUGAAU-UGG-CACGA-CGU'</tt> <tt class="py-op">+</tt> \ </tt> <a name="L1090"></a><tt class="py-lineno">1090</tt> <tt class="py-line"> <tt class="py-string">'UUCUACAAGGUG-CCGG-AA-CACCUAACAAUAAGUAAGUCAGCAGUGAGAU'</tt><tt class="py-op">,</tt> <tt id="link-143" class="py-name"><a title="Bio.EUtils.POM.True" class="py-name" href="#" onclick="return doclink('link-143', 'True', 'link-136');">True</a></tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt> <a name="L1091"></a><tt class="py-lineno">1091</tt> <tt class="py-line"> <tt class="py-op">(</tt><tt class="py-name">gbk_example</tt><tt class="py-op">,</tt> <tt class="py-string">"genbank"</tt><tt class="py-op">,</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-string">"U49845.1"</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt><tt class="py-op">,</tt> <tt id="link-144" class="py-name"><a title="Bio.EUtils.POM.True" class="py-name" href="#" onclick="return doclink('link-144', 'True', 'link-136');">True</a></tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt> <a name="L1092"></a><tt class="py-lineno">1092</tt> <tt class="py-line"> <tt class="py-op">(</tt><tt class="py-name">gbk_example2</tt><tt class="py-op">,</tt><tt class="py-string">"genbank"</tt><tt class="py-op">,</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-string">'AAD51968.1'</tt><tt class="py-op">,</tt> </tt> <a name="L1093"></a><tt class="py-lineno">1093</tt> <tt class="py-line"> <tt class="py-string">"MESTLGSDLARLVRVWRALIDHRLKPLELTQTHWVTLHNINRLPPEQSQIQLAKAIGIEQ"</tt> <tt class="py-op">+</tt> \ </tt> <a name="L1094"></a><tt class="py-lineno">1094</tt> <tt class="py-line"> <tt class="py-string">"PSLVRTLDQLEEKGLITRHTCANDRRAKRIKLTEQSSPIIEQVDGVICSTRKEILGGISP"</tt> <tt class="py-op">+</tt> \ </tt> <a name="L1095"></a><tt class="py-lineno">1095</tt> <tt class="py-line"> <tt class="py-string">"DEIELLSGLIDKLERNIIQLQSK"</tt><tt class="py-op">,</tt> <tt id="link-145" class="py-name"><a title="Bio.EUtils.POM.True" class="py-name" href="#" onclick="return doclink('link-145', 'True', 'link-136');">True</a></tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt> <a name="L1096"></a><tt class="py-lineno">1096</tt> <tt class="py-line"> <tt class="py-op">]</tt> </tt> <a name="L1097"></a><tt class="py-lineno">1097</tt> <tt class="py-line"> </tt> <a name="L1098"></a><tt class="py-lineno">1098</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-op">(</tt><tt id="link-146" class="py-name" targets="Variable BioSQL.BioSeq.DBSeq.data=BioSQL.BioSeq.DBSeq-class.html#data"><a title="BioSQL.BioSeq.DBSeq.data" class="py-name" href="#" onclick="return doclink('link-146', 'data', 'link-146');">data</a></tt><tt class="py-op">,</tt> <tt id="link-147" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-147', 'format', 'link-43');">format</a></tt><tt class="py-op">,</tt> <tt class="py-name">rec_count</tt><tt class="py-op">,</tt> <tt id="link-148" class="py-name" targets="Method BioSQL.BioSeqDatabase.Adaptor.last_id()=BioSQL.BioSeqDatabase.Adaptor-class.html#last_id,Method BioSQL.DBUtils.Generic_dbutils.last_id()=BioSQL.DBUtils.Generic_dbutils-class.html#last_id,Method BioSQL.DBUtils.Mysql_dbutils.last_id()=BioSQL.DBUtils.Mysql_dbutils-class.html#last_id,Method BioSQL.DBUtils.Pgdb_dbutils.last_id()=BioSQL.DBUtils.Pgdb_dbutils-class.html#last_id,Method BioSQL.DBUtils.Psycopg_dbutils.last_id()=BioSQL.DBUtils.Psycopg_dbutils-class.html#last_id"><a title="BioSQL.BioSeqDatabase.Adaptor.last_id BioSQL.DBUtils.Generic_dbutils.last_id BioSQL.DBUtils.Mysql_dbutils.last_id BioSQL.DBUtils.Pgdb_dbutils.last_id BioSQL.DBUtils.Psycopg_dbutils.last_id" class="py-name" href="#" onclick="return doclink('link-148', 'last_id', 'link-148');">last_id</a></tt><tt class="py-op">,</tt> <tt class="py-name">last_seq</tt><tt class="py-op">,</tt> <tt class="py-name">dict_check</tt><tt class="py-op">)</tt> <tt class="py-keyword">in</tt> <tt class="py-name">tests</tt><tt class="py-op">:</tt> </tt> <a name="L1099"></a><tt class="py-lineno">1099</tt> <tt class="py-line"> <tt class="py-comment">#Note all the examples have one and only one alignment</tt> </tt> <a name="L1100"></a><tt class="py-lineno">1100</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-keyword">print</tt> <tt class="py-string">"%s file with %i records"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt id="link-149" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-149', 'format', 'link-43');">format</a></tt><tt class="py-op">,</tt> <tt class="py-name">rec_count</tt><tt class="py-op">)</tt> </tt> <a name="L1101"></a><tt class="py-lineno">1101</tt> <tt class="py-line"> </tt> <a name="L1102"></a><tt class="py-lineno">1102</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Bio.AlignIO.read(handle, format)"</tt> </tt> <a name="L1103"></a><tt class="py-lineno">1103</tt> <tt class="py-line"> <tt id="link-150" class="py-name"><a title="Bio.expressions.blast.ncbiblast.alignment" class="py-name" href="#" onclick="return doclink('link-150', 'alignment', 'link-58');">alignment</a></tt> <tt class="py-op">=</tt> <tt id="link-151" class="py-name" targets="Method Bio.AlignAce.Motif.Motif.read()=Bio.AlignAce.Motif.Motif-class.html#read,Function Bio.AlignIO.read()=Bio.AlignIO-module.html#read,Function Bio.Cluster.read()=Bio.Cluster-module.html#read,Method Bio.EUtils.ReseekFile.ReseekFile.read()=Bio.EUtils.ReseekFile.ReseekFile-class.html#read,Function Bio.Entrez.read()=Bio.Entrez-module.html#read,Method Bio.File.SGMLHandle.read()=Bio.File.SGMLHandle-class.html#read,Method Bio.File.UndoHandle.read()=Bio.File.UndoHandle-class.html#read,Method Bio.FilteredReader.FilteredReader.read()=Bio.FilteredReader.FilteredReader-class.html#read,Method Bio.NeuralNetwork.Gene.Pattern.PatternIO.read()=Bio.NeuralNetwork.Gene.Pattern.PatternIO-class.html#read,Method Bio.Nexus.Nexus.Nexus.read()=Bio.Nexus.Nexus.Nexus-class.html#read,Function Bio.Prosite.Prodoc.read()=Bio.Prosite.Prodoc-module.html#read,Function Bio.Prosite.read()=Bio.Prosite-module.html#read,Method Bio.SGMLExtractor.SGMLExtractorHandle.read()=Bio.SGMLExtractor.SGMLExtractorHandle-class.html#read,Function Bio.SeqIO.read()=Bio.SeqIO-module.html#read,Function Bio.SwissProt.read()=Bio.SwissProt-module.html#read"><a title="Bio.AlignAce.Motif.Motif.read Bio.AlignIO.read Bio.Cluster.read Bio.EUtils.ReseekFile.ReseekFile.read Bio.Entrez.read Bio.File.SGMLHandle.read Bio.File.UndoHandle.read Bio.FilteredReader.FilteredReader.read Bio.NeuralNetwork.Gene.Pattern.PatternIO.read Bio.Nexus.Nexus.Nexus.read Bio.Prosite.Prodoc.read Bio.Prosite.read Bio.SGMLExtractor.SGMLExtractorHandle.read Bio.SeqIO.read Bio.SwissProt.read" class="py-name" href="#" onclick="return doclink('link-151', 'read', 'link-151');">read</a></tt><tt class="py-op">(</tt><tt class="py-name">StringIO</tt><tt class="py-op">(</tt><tt id="link-152" class="py-name"><a title="BioSQL.BioSeq.DBSeq.data" class="py-name" href="#" onclick="return doclink('link-152', 'data', 'link-146');">data</a></tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt id="link-153" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-153', 'format', 'link-43');">format</a></tt><tt class="py-op">)</tt> </tt> <a name="L1104"></a><tt class="py-lineno">1104</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt id="link-154" class="py-name"><a title="Bio.expressions.blast.ncbiblast.alignment" class="py-name" href="#" onclick="return doclink('link-154', 'alignment', 'link-58');">alignment</a></tt><tt class="py-op">.</tt><tt id="link-155" class="py-name"><a title="Bio.Align.Generic.Alignment.get_all_seqs" class="py-name" href="#" onclick="return doclink('link-155', 'get_all_seqs', 'link-62');">get_all_seqs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">rec_count</tt> </tt> <a name="L1105"></a><tt class="py-lineno">1105</tt> <tt class="py-line"> </tt> <a name="L1106"></a><tt class="py-lineno">1106</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Bio.AlignIO.read(handle, format, seq_count)"</tt> </tt> <a name="L1107"></a><tt class="py-lineno">1107</tt> <tt class="py-line"> <tt id="link-156" class="py-name"><a title="Bio.expressions.blast.ncbiblast.alignment" class="py-name" href="#" onclick="return doclink('link-156', 'alignment', 'link-58');">alignment</a></tt> <tt class="py-op">=</tt> <tt id="link-157" class="py-name"><a title="Bio.AlignAce.Motif.Motif.read Bio.AlignIO.read Bio.Cluster.read Bio.EUtils.ReseekFile.ReseekFile.read Bio.Entrez.read Bio.File.SGMLHandle.read Bio.File.UndoHandle.read Bio.FilteredReader.FilteredReader.read Bio.NeuralNetwork.Gene.Pattern.PatternIO.read Bio.Nexus.Nexus.Nexus.read Bio.Prosite.Prodoc.read Bio.Prosite.read Bio.SGMLExtractor.SGMLExtractorHandle.read Bio.SeqIO.read Bio.SwissProt.read" class="py-name" href="#" onclick="return doclink('link-157', 'read', 'link-151');">read</a></tt><tt class="py-op">(</tt><tt class="py-name">StringIO</tt><tt class="py-op">(</tt><tt id="link-158" class="py-name"><a title="BioSQL.BioSeq.DBSeq.data" class="py-name" href="#" onclick="return doclink('link-158', 'data', 'link-146');">data</a></tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt id="link-159" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-159', 'format', 'link-43');">format</a></tt><tt class="py-op">,</tt> <tt class="py-name">rec_count</tt><tt class="py-op">)</tt> </tt> <a name="L1108"></a><tt class="py-lineno">1108</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt id="link-160" class="py-name"><a title="Bio.expressions.blast.ncbiblast.alignment" class="py-name" href="#" onclick="return doclink('link-160', 'alignment', 'link-58');">alignment</a></tt><tt class="py-op">.</tt><tt id="link-161" class="py-name"><a title="Bio.Align.Generic.Alignment.get_all_seqs" class="py-name" href="#" onclick="return doclink('link-161', 'get_all_seqs', 'link-62');">get_all_seqs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">rec_count</tt> </tt> <a name="L1109"></a><tt class="py-lineno">1109</tt> <tt class="py-line"> </tt> <a name="L1110"></a><tt class="py-lineno">1110</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Bio.AlignIO.parse(handle, format)"</tt> </tt> <a name="L1111"></a><tt class="py-lineno">1111</tt> <tt class="py-line"> <tt class="py-comment">#Basic check, turning the iterator into a list...</tt> </tt> <a name="L1112"></a><tt class="py-lineno">1112</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-comment">#This uses "for x in iterator" interally.</tt> </tt> <a name="L1113"></a><tt class="py-lineno">1113</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-name">iterator</tt> <tt class="py-op">=</tt> <tt id="link-162" class="py-name"><a title="Bio.Affy.CelFile.CelParser.parse Bio.AlignAce.Parser.AlignAceParser.parse Bio.AlignAce.Parser.CompareAceParser.parse Bio.AlignIO.parse Bio.Blast.NCBIStandalone.BlastErrorParser.parse Bio.Blast.NCBIStandalone.BlastParser.parse Bio.Blast.NCBIStandalone.PSIBlastParser.parse Bio.Blast.NCBIWWW.BlastParser.parse Bio.Blast.NCBIXML.BlastParser.parse Bio.Blast.NCBIXML.parse Bio.CDD.RecordParser.parse Bio.Compass.RecordParser.parse Bio.Decode.parse Bio.ECell.RecordParser.parse Bio.EUtils.POM.POMDocument.parse Bio.EUtils.parse Bio.Emboss.Primer.Primer3Parser.parse Bio.Emboss.Primer.PrimerSearchParser.parse Bio.Enzyme.RecordParser.parse Bio.Fasta.RecordParser.parse Bio.Fasta.SequenceParser.parse Bio.GenBank.FeatureParser.parse Bio.GenBank.LocationParser.parse Bio.GenBank.RecordParser.parse Bio.GenBank.Scanner.InsdcScanner.parse Bio.Geo.parse Bio.Gobase.RecordParser.parse Bio.IntelliGenetics.RecordParser.parse Bio.InterPro.InterProParser.parse Bio.KEGG.Compound.parse Bio.KEGG.Enzyme.parse Bio.KEGG.Map.parse Bio.LocusLink.RecordParser.parse Bio.LocusLink.web_parse.LocusLinkParser.parse Bio.MEME.Parser.MASTParser.parse Bio.MEME.Parser.MEMEParser.parse Bio.Medline.RecordParser.parse Bio.MetaTool.RecordParser.parse Bio.NBRF.RecordParser.parse Bio.Ndb.NdbParser.parse Bio.ParserSupport.AbstractParser.parse Bio.Parsers.spark.GenericParser.parse Bio.PopGen.FDist.RecordParser.parse Bio.PopGen.GenePop.RecordParser.parse Bio.PopGen.GenePop.parse Bio.Prosite.Prodoc.RecordParser.parse Bio.Prosite.Prodoc.parse Bio.Prosite.RecordParser.parse Bio.Prosite.parse Bio.Rebase.RecordParser.parse Bio.SCOP.Cla.Parser.parse Bio.SCOP.Cla.parse Bio.SCOP.Des.Parser.parse Bio.SCOP.Des.parse Bio.SCOP.Dom.Parser.parse Bio.SCOP.Dom.parse Bio.SCOP.Hie.Parser.parse Bio.SCOP.Hie.parse Bio.SCOP.Raf.Parser.parse Bio.SCOP.Raf.parse Bio.Saf.RecordParser.parse Bio.SeqIO.parse Bio.Sequencing.Ace.ACEParser.parse Bio.Sequencing.Ace.RecordParser.parse Bio.Sequencing.Phd.RecordParser.parse Bio.SwissProt.KeyWList.ListParser.parse Bio.SwissProt.KeyWList.parse Bio.SwissProt.SProt.RecordParser.parse Bio.SwissProt.SProt.SequenceParser.parse Bio.SwissProt.parse Bio.UniGene.RecordParser.parse Bio.Wise.psw.parse Martel.Parser.HeaderFooterParser.parse Martel.Parser.Parser.parse Martel.Parser.RecordParser.parse Martel.msre_parse.parse" class="py-name" href="#" onclick="return doclink('link-162', 'parse', 'link-71');">parse</a></tt><tt class="py-op">(</tt><tt class="py-name">StringIO</tt><tt class="py-op">(</tt><tt id="link-163" class="py-name"><a title="BioSQL.BioSeq.DBSeq.data" class="py-name" href="#" onclick="return doclink('link-163', 'data', 'link-146');">data</a></tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt id="link-164" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-164', 'format', 'link-43');">format</a></tt><tt class="py-op">=</tt><tt id="link-165" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-165', 'format', 'link-43');">format</a></tt><tt class="py-op">)</tt> </tt> <a name="L1114"></a><tt class="py-lineno">1114</tt> <tt class="py-line"> <tt class="py-name">as_list</tt> <tt class="py-op">=</tt> <tt id="link-166" class="py-name"><a title="Bio.Pathway.Rep.HashSet.HashSet.list" class="py-name" href="#" onclick="return doclink('link-166', 'list', 'link-79');">list</a></tt><tt class="py-op">(</tt><tt class="py-name">iterator</tt><tt class="py-op">)</tt> </tt> <a name="L1115"></a><tt class="py-lineno">1115</tt> <tt class="py-line"> </tt> <a name="L1116"></a><tt class="py-lineno">1116</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">as_list</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt> </tt> <a name="L1117"></a><tt class="py-lineno">1117</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">as_list</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-167" class="py-name"><a title="Bio.Align.Generic.Alignment.get_all_seqs" class="py-name" href="#" onclick="return doclink('link-167', 'get_all_seqs', 'link-62');">get_all_seqs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">rec_count</tt><tt class="py-op">,</tt> \ </tt> <a name="L1118"></a><tt class="py-lineno">1118</tt> <tt class="py-line"> <tt class="py-string">"Expected %i records, found %i"</tt> \ </tt> <a name="L1119"></a><tt class="py-lineno">1119</tt> <tt class="py-line"> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">rec_count</tt><tt class="py-op">,</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">as_list</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-168" class="py-name"><a title="Bio.Align.Generic.Alignment.get_all_seqs" class="py-name" href="#" onclick="return doclink('link-168', 'get_all_seqs', 'link-62');">get_all_seqs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt> <a name="L1120"></a><tt class="py-lineno">1120</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">as_list</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-169" class="py-name"><a title="Bio.Align.Generic.Alignment.get_all_seqs" class="py-name" href="#" onclick="return doclink('link-169', 'get_all_seqs', 'link-62');">get_all_seqs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-170" class="py-name" targets="Variable Bio.Data.CodonTable.id=Bio.Data.CodonTable-module.html#id,Variable Bio.Encodings.IUPACEncoding.id=Bio.Encodings.IUPACEncoding-module.html#id,Method Bio.GFF.Feature.id()=Bio.GFF.Feature-class.html#id"><a title="Bio.Data.CodonTable.id Bio.Encodings.IUPACEncoding.id Bio.GFF.Feature.id" class="py-name" href="#" onclick="return doclink('link-170', 'id', 'link-170');">id</a></tt> <tt class="py-op">==</tt> <tt id="link-171" class="py-name"><a title="BioSQL.BioSeqDatabase.Adaptor.last_id BioSQL.DBUtils.Generic_dbutils.last_id BioSQL.DBUtils.Mysql_dbutils.last_id BioSQL.DBUtils.Pgdb_dbutils.last_id BioSQL.DBUtils.Psycopg_dbutils.last_id" class="py-name" href="#" onclick="return doclink('link-171', 'last_id', 'link-148');">last_id</a></tt><tt class="py-op">,</tt> \ </tt> <a name="L1121"></a><tt class="py-lineno">1121</tt> <tt class="py-line"> <tt class="py-string">"Expected '%s' as last record ID, found '%s'"</tt> \ </tt> <a name="L1122"></a><tt class="py-lineno">1122</tt> <tt class="py-line"> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt id="link-172" class="py-name"><a title="BioSQL.BioSeqDatabase.Adaptor.last_id BioSQL.DBUtils.Generic_dbutils.last_id BioSQL.DBUtils.Mysql_dbutils.last_id BioSQL.DBUtils.Pgdb_dbutils.last_id BioSQL.DBUtils.Psycopg_dbutils.last_id" class="py-name" href="#" onclick="return doclink('link-172', 'last_id', 'link-148');">last_id</a></tt><tt class="py-op">,</tt> <tt class="py-name">as_list</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-173" class="py-name"><a title="Bio.Align.Generic.Alignment.get_all_seqs" class="py-name" href="#" onclick="return doclink('link-173', 'get_all_seqs', 'link-62');">get_all_seqs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-174" class="py-name"><a title="Bio.Data.CodonTable.id Bio.Encodings.IUPACEncoding.id Bio.GFF.Feature.id" class="py-name" href="#" onclick="return doclink('link-174', 'id', 'link-170');">id</a></tt><tt class="py-op">)</tt> </tt> <a name="L1123"></a><tt class="py-lineno">1123</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">last_seq</tt> <tt class="py-op">:</tt> </tt> <a name="L1124"></a><tt class="py-lineno">1124</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">as_list</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-175" class="py-name"><a title="Bio.Align.Generic.Alignment.get_all_seqs" class="py-name" href="#" onclick="return doclink('link-175', 'get_all_seqs', 'link-62');">get_all_seqs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-176" class="py-name"><a title="Bio.GFF.Feature.seq Bio.GFF.FeatureAggregate.seq BioSQL.BioSeq.DBSeqRecord.seq" class="py-name" href="#" onclick="return doclink('link-176', 'seq', 'link-131');">seq</a></tt><tt class="py-op">.</tt><tt id="link-177" class="py-name"><a title="Bio.Crystal.Crystal.tostring Bio.EUtils.POM.ElementNode.tostring Bio.Prosite.Pattern.Prosite.tostring Bio.Seq.MutableSeq.tostring Bio.Seq.Seq.tostring BioSQL.BioSeq.DBSeq.tostring" class="py-name" href="#" onclick="return doclink('link-177', 'tostring', 'link-132');">tostring</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">last_seq</tt> </tt> <a name="L1125"></a><tt class="py-lineno">1125</tt> <tt class="py-line"> </tt> <a name="L1126"></a><tt class="py-lineno">1126</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Bio.AlignIO.parse(handle, format, seq_count)"</tt> </tt> <a name="L1127"></a><tt class="py-lineno">1127</tt> <tt class="py-line"> <tt class="py-name">as_list2</tt> <tt class="py-op">=</tt> <tt id="link-178" class="py-name"><a title="Bio.Pathway.Rep.HashSet.HashSet.list" class="py-name" href="#" onclick="return doclink('link-178', 'list', 'link-79');">list</a></tt><tt class="py-op">(</tt><tt id="link-179" class="py-name"><a title="Bio.Affy.CelFile.CelParser.parse Bio.AlignAce.Parser.AlignAceParser.parse Bio.AlignAce.Parser.CompareAceParser.parse Bio.AlignIO.parse Bio.Blast.NCBIStandalone.BlastErrorParser.parse Bio.Blast.NCBIStandalone.BlastParser.parse Bio.Blast.NCBIStandalone.PSIBlastParser.parse Bio.Blast.NCBIWWW.BlastParser.parse Bio.Blast.NCBIXML.BlastParser.parse Bio.Blast.NCBIXML.parse Bio.CDD.RecordParser.parse Bio.Compass.RecordParser.parse Bio.Decode.parse Bio.ECell.RecordParser.parse Bio.EUtils.POM.POMDocument.parse Bio.EUtils.parse Bio.Emboss.Primer.Primer3Parser.parse Bio.Emboss.Primer.PrimerSearchParser.parse Bio.Enzyme.RecordParser.parse Bio.Fasta.RecordParser.parse Bio.Fasta.SequenceParser.parse Bio.GenBank.FeatureParser.parse Bio.GenBank.LocationParser.parse Bio.GenBank.RecordParser.parse Bio.GenBank.Scanner.InsdcScanner.parse Bio.Geo.parse Bio.Gobase.RecordParser.parse Bio.IntelliGenetics.RecordParser.parse Bio.InterPro.InterProParser.parse Bio.KEGG.Compound.parse Bio.KEGG.Enzyme.parse Bio.KEGG.Map.parse Bio.LocusLink.RecordParser.parse Bio.LocusLink.web_parse.LocusLinkParser.parse Bio.MEME.Parser.MASTParser.parse Bio.MEME.Parser.MEMEParser.parse Bio.Medline.RecordParser.parse Bio.MetaTool.RecordParser.parse Bio.NBRF.RecordParser.parse Bio.Ndb.NdbParser.parse Bio.ParserSupport.AbstractParser.parse Bio.Parsers.spark.GenericParser.parse Bio.PopGen.FDist.RecordParser.parse Bio.PopGen.GenePop.RecordParser.parse Bio.PopGen.GenePop.parse Bio.Prosite.Prodoc.RecordParser.parse Bio.Prosite.Prodoc.parse Bio.Prosite.RecordParser.parse Bio.Prosite.parse Bio.Rebase.RecordParser.parse Bio.SCOP.Cla.Parser.parse Bio.SCOP.Cla.parse Bio.SCOP.Des.Parser.parse Bio.SCOP.Des.parse Bio.SCOP.Dom.Parser.parse Bio.SCOP.Dom.parse Bio.SCOP.Hie.Parser.parse Bio.SCOP.Hie.parse Bio.SCOP.Raf.Parser.parse Bio.SCOP.Raf.parse Bio.Saf.RecordParser.parse Bio.SeqIO.parse Bio.Sequencing.Ace.ACEParser.parse Bio.Sequencing.Ace.RecordParser.parse Bio.Sequencing.Phd.RecordParser.parse Bio.SwissProt.KeyWList.ListParser.parse Bio.SwissProt.KeyWList.parse Bio.SwissProt.SProt.RecordParser.parse Bio.SwissProt.SProt.SequenceParser.parse Bio.SwissProt.parse Bio.UniGene.RecordParser.parse Bio.Wise.psw.parse Martel.Parser.HeaderFooterParser.parse Martel.Parser.Parser.parse Martel.Parser.RecordParser.parse Martel.msre_parse.parse" class="py-name" href="#" onclick="return doclink('link-179', 'parse', 'link-71');">parse</a></tt><tt class="py-op">(</tt><tt class="py-name">StringIO</tt><tt class="py-op">(</tt><tt id="link-180" class="py-name"><a title="BioSQL.BioSeq.DBSeq.data" class="py-name" href="#" onclick="return doclink('link-180', 'data', 'link-146');">data</a></tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt id="link-181" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-181', 'format', 'link-43');">format</a></tt><tt class="py-op">=</tt><tt id="link-182" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-182', 'format', 'link-43');">format</a></tt><tt class="py-op">,</tt> <tt class="py-name">seq_count</tt><tt class="py-op">=</tt><tt class="py-name">rec_count</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt> <a name="L1128"></a><tt class="py-lineno">1128</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">as_list2</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">as_list</tt><tt class="py-op">)</tt> </tt> <a name="L1129"></a><tt class="py-lineno">1129</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">a1</tt><tt class="py-op">,</tt> <tt class="py-name">a2</tt> <tt class="py-keyword">in</tt> <tt class="py-name">zip</tt><tt class="py-op">(</tt><tt class="py-name">as_list</tt><tt class="py-op">,</tt> <tt class="py-name">as_list2</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt> <a name="L1130"></a><tt class="py-lineno">1130</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">align_cmp</tt><tt class="py-op">(</tt><tt class="py-name">a1</tt><tt class="py-op">,</tt> <tt class="py-name">a2</tt><tt class="py-op">)</tt> </tt> <a name="L1131"></a><tt class="py-lineno">1131</tt> <tt class="py-line"> </tt> <a name="L1132"></a><tt class="py-lineno">1132</tt> <tt class="py-line"> <tt class="py-name">half</tt> <tt class="py-op">=</tt> <tt class="py-name">rec_count</tt> <tt class="py-op">/</tt> <tt class="py-number">2</tt> </tt> <a name="L1133"></a><tt class="py-lineno">1133</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">half</tt><tt class="py-op">*</tt><tt class="py-number">2</tt> <tt class="py-op">==</tt> <tt class="py-name">rec_count</tt> <tt class="py-op">:</tt> </tt> <a name="L1134"></a><tt class="py-lineno">1134</tt> <tt class="py-line"> <tt class="py-comment">#Even... try splitting the alignments in two.</tt> </tt> <a name="L1135"></a><tt class="py-lineno">1135</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-comment">#This should work for things parsed by Bio.SeqIO like fasta,</tt> </tt> <a name="L1136"></a><tt class="py-lineno">1136</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-comment">#but fail for things parsed by Bio.AlignIO itself, like phylip,</tt> </tt> <a name="L1137"></a><tt class="py-lineno">1137</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-comment">#clustal, stockholm, ...</tt> </tt> <a name="L1138"></a><tt class="py-lineno">1138</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt> <a name="L1139"></a><tt class="py-lineno">1139</tt> <tt class="py-line"> <tt id="link-183" class="py-name"><a title="Bio.Pathway.Rep.HashSet.HashSet.list" class="py-name" href="#" onclick="return doclink('link-183', 'list', 'link-79');">list</a></tt><tt class="py-op">(</tt><tt id="link-184" class="py-name"><a title="Bio.Affy.CelFile.CelParser.parse Bio.AlignAce.Parser.AlignAceParser.parse Bio.AlignAce.Parser.CompareAceParser.parse Bio.AlignIO.parse Bio.Blast.NCBIStandalone.BlastErrorParser.parse Bio.Blast.NCBIStandalone.BlastParser.parse Bio.Blast.NCBIStandalone.PSIBlastParser.parse Bio.Blast.NCBIWWW.BlastParser.parse Bio.Blast.NCBIXML.BlastParser.parse Bio.Blast.NCBIXML.parse Bio.CDD.RecordParser.parse Bio.Compass.RecordParser.parse Bio.Decode.parse Bio.ECell.RecordParser.parse Bio.EUtils.POM.POMDocument.parse Bio.EUtils.parse Bio.Emboss.Primer.Primer3Parser.parse Bio.Emboss.Primer.PrimerSearchParser.parse Bio.Enzyme.RecordParser.parse Bio.Fasta.RecordParser.parse Bio.Fasta.SequenceParser.parse Bio.GenBank.FeatureParser.parse Bio.GenBank.LocationParser.parse Bio.GenBank.RecordParser.parse Bio.GenBank.Scanner.InsdcScanner.parse Bio.Geo.parse Bio.Gobase.RecordParser.parse Bio.IntelliGenetics.RecordParser.parse Bio.InterPro.InterProParser.parse Bio.KEGG.Compound.parse Bio.KEGG.Enzyme.parse Bio.KEGG.Map.parse Bio.LocusLink.RecordParser.parse Bio.LocusLink.web_parse.LocusLinkParser.parse Bio.MEME.Parser.MASTParser.parse Bio.MEME.Parser.MEMEParser.parse Bio.Medline.RecordParser.parse Bio.MetaTool.RecordParser.parse Bio.NBRF.RecordParser.parse Bio.Ndb.NdbParser.parse Bio.ParserSupport.AbstractParser.parse Bio.Parsers.spark.GenericParser.parse Bio.PopGen.FDist.RecordParser.parse Bio.PopGen.GenePop.RecordParser.parse Bio.PopGen.GenePop.parse Bio.Prosite.Prodoc.RecordParser.parse Bio.Prosite.Prodoc.parse Bio.Prosite.RecordParser.parse Bio.Prosite.parse Bio.Rebase.RecordParser.parse Bio.SCOP.Cla.Parser.parse Bio.SCOP.Cla.parse Bio.SCOP.Des.Parser.parse Bio.SCOP.Des.parse Bio.SCOP.Dom.Parser.parse Bio.SCOP.Dom.parse Bio.SCOP.Hie.Parser.parse Bio.SCOP.Hie.parse Bio.SCOP.Raf.Parser.parse Bio.SCOP.Raf.parse Bio.Saf.RecordParser.parse Bio.SeqIO.parse Bio.Sequencing.Ace.ACEParser.parse Bio.Sequencing.Ace.RecordParser.parse Bio.Sequencing.Phd.RecordParser.parse Bio.SwissProt.KeyWList.ListParser.parse Bio.SwissProt.KeyWList.parse Bio.SwissProt.SProt.RecordParser.parse Bio.SwissProt.SProt.SequenceParser.parse Bio.SwissProt.parse Bio.UniGene.RecordParser.parse Bio.Wise.psw.parse Martel.Parser.HeaderFooterParser.parse Martel.Parser.Parser.parse Martel.Parser.RecordParser.parse Martel.msre_parse.parse" class="py-name" href="#" onclick="return doclink('link-184', 'parse', 'link-71');">parse</a></tt><tt class="py-op">(</tt><tt class="py-name">StringIO</tt><tt class="py-op">(</tt><tt id="link-185" class="py-name"><a title="BioSQL.BioSeq.DBSeq.data" class="py-name" href="#" onclick="return doclink('link-185', 'data', 'link-146');">data</a></tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt id="link-186" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-186', 'format', 'link-43');">format</a></tt><tt class="py-op">=</tt><tt id="link-187" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-187', 'format', 'link-43');">format</a></tt><tt class="py-op">,</tt> <tt class="py-name">seq_count</tt><tt class="py-op">=</tt><tt class="py-name">half</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt> <a name="L1140"></a><tt class="py-lineno">1140</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt id="link-188" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-188', 'format', 'link-43');">format</a></tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-189" class="py-name"><a title="Bio.AlignIO._FormatToIterator Bio.SeqIO._FormatToIterator" class="py-name" href="#" onclick="return doclink('link-189', '_FormatToIterator', 'link-20');">_FormatToIterator</a></tt> </tt> <a name="L1141"></a><tt class="py-lineno">1141</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt id="link-190" class="py-name" targets="Variable Bio.Affy.CelFile.e=Bio.Affy.CelFile-module.html#e,Variable Bio.LogisticRegression.e=Bio.LogisticRegression-module.html#e,Variable Bio.MarkovModel.e=Bio.MarkovModel-module.html#e,Variable Bio.MaxEntropy.e=Bio.MaxEntropy-module.html#e,Variable Bio.NaiveBayes.e=Bio.NaiveBayes-module.html#e,Variable Bio.Statistics.lowess.e=Bio.Statistics.lowess-module.html#e,Variable Bio.distance.e=Bio.distance-module.html#e,Variable Bio.kNN.e=Bio.kNN-module.html#e"><a title="Bio.Affy.CelFile.e Bio.LogisticRegression.e Bio.MarkovModel.e Bio.MaxEntropy.e Bio.NaiveBayes.e Bio.Statistics.lowess.e Bio.distance.e Bio.kNN.e" class="py-name" href="#" onclick="return doclink('link-190', 'e', 'link-190');">e</a></tt> <tt class="py-op">:</tt> </tt> <a name="L1142"></a><tt class="py-lineno">1142</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt id="link-191" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-191', 'format', 'link-43');">format</a></tt> <tt class="py-keyword">in</tt> <tt id="link-192" class="py-name"><a title="Bio.AlignIO._FormatToIterator Bio.SeqIO._FormatToIterator" class="py-name" href="#" onclick="return doclink('link-192', '_FormatToIterator', 'link-20');">_FormatToIterator</a></tt><tt class="py-op">,</tt> \ </tt> <a name="L1143"></a><tt class="py-lineno">1143</tt> <tt class="py-line"> <tt class="py-string">"Format %s, %s"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt id="link-193" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-193', 'format', 'link-43');">format</a></tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt id="link-194" class="py-name"><a title="Bio.Affy.CelFile.e Bio.LogisticRegression.e Bio.MarkovModel.e Bio.MaxEntropy.e Bio.NaiveBayes.e Bio.Statistics.lowess.e Bio.distance.e Bio.kNN.e" class="py-name" href="#" onclick="return doclink('link-194', 'e', 'link-190');">e</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt> <a name="L1144"></a><tt class="py-lineno">1144</tt> <tt class="py-line"> <tt class="py-keyword">del</tt> <tt class="py-name">half</tt> </tt> <a name="L1145"></a><tt class="py-lineno">1145</tt> <tt class="py-line"> </tt> <a name="L1146"></a><tt class="py-lineno">1146</tt> <tt class="py-line"> </tt> <a name="L1147"></a><tt class="py-lineno">1147</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Iteration using .next()"</tt> </tt> <a name="L1148"></a><tt class="py-lineno">1148</tt> <tt class="py-line"> <tt class="py-comment">#Test iteration including use of the next() method and "for x in iterator"</tt> </tt> <a name="L1149"></a><tt class="py-lineno">1149</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-name">iterator</tt> <tt class="py-op">=</tt> <tt id="link-195" class="py-name"><a title="Bio.Affy.CelFile.CelParser.parse Bio.AlignAce.Parser.AlignAceParser.parse Bio.AlignAce.Parser.CompareAceParser.parse Bio.AlignIO.parse Bio.Blast.NCBIStandalone.BlastErrorParser.parse Bio.Blast.NCBIStandalone.BlastParser.parse Bio.Blast.NCBIStandalone.PSIBlastParser.parse Bio.Blast.NCBIWWW.BlastParser.parse Bio.Blast.NCBIXML.BlastParser.parse Bio.Blast.NCBIXML.parse Bio.CDD.RecordParser.parse Bio.Compass.RecordParser.parse Bio.Decode.parse Bio.ECell.RecordParser.parse Bio.EUtils.POM.POMDocument.parse Bio.EUtils.parse Bio.Emboss.Primer.Primer3Parser.parse Bio.Emboss.Primer.PrimerSearchParser.parse Bio.Enzyme.RecordParser.parse Bio.Fasta.RecordParser.parse Bio.Fasta.SequenceParser.parse Bio.GenBank.FeatureParser.parse Bio.GenBank.LocationParser.parse Bio.GenBank.RecordParser.parse Bio.GenBank.Scanner.InsdcScanner.parse Bio.Geo.parse Bio.Gobase.RecordParser.parse Bio.IntelliGenetics.RecordParser.parse Bio.InterPro.InterProParser.parse Bio.KEGG.Compound.parse Bio.KEGG.Enzyme.parse Bio.KEGG.Map.parse Bio.LocusLink.RecordParser.parse Bio.LocusLink.web_parse.LocusLinkParser.parse Bio.MEME.Parser.MASTParser.parse Bio.MEME.Parser.MEMEParser.parse Bio.Medline.RecordParser.parse Bio.MetaTool.RecordParser.parse Bio.NBRF.RecordParser.parse Bio.Ndb.NdbParser.parse Bio.ParserSupport.AbstractParser.parse Bio.Parsers.spark.GenericParser.parse Bio.PopGen.FDist.RecordParser.parse Bio.PopGen.GenePop.RecordParser.parse Bio.PopGen.GenePop.parse Bio.Prosite.Prodoc.RecordParser.parse Bio.Prosite.Prodoc.parse Bio.Prosite.RecordParser.parse Bio.Prosite.parse Bio.Rebase.RecordParser.parse Bio.SCOP.Cla.Parser.parse Bio.SCOP.Cla.parse Bio.SCOP.Des.Parser.parse Bio.SCOP.Des.parse Bio.SCOP.Dom.Parser.parse Bio.SCOP.Dom.parse Bio.SCOP.Hie.Parser.parse Bio.SCOP.Hie.parse Bio.SCOP.Raf.Parser.parse Bio.SCOP.Raf.parse Bio.Saf.RecordParser.parse Bio.SeqIO.parse Bio.Sequencing.Ace.ACEParser.parse Bio.Sequencing.Ace.RecordParser.parse Bio.Sequencing.Phd.RecordParser.parse Bio.SwissProt.KeyWList.ListParser.parse Bio.SwissProt.KeyWList.parse Bio.SwissProt.SProt.RecordParser.parse Bio.SwissProt.SProt.SequenceParser.parse Bio.SwissProt.parse Bio.UniGene.RecordParser.parse Bio.Wise.psw.parse Martel.Parser.HeaderFooterParser.parse Martel.Parser.Parser.parse Martel.Parser.RecordParser.parse Martel.msre_parse.parse" class="py-name" href="#" onclick="return doclink('link-195', 'parse', 'link-71');">parse</a></tt><tt class="py-op">(</tt><tt class="py-name">StringIO</tt><tt class="py-op">(</tt><tt id="link-196" class="py-name"><a title="BioSQL.BioSeq.DBSeq.data" class="py-name" href="#" onclick="return doclink('link-196', 'data', 'link-146');">data</a></tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt id="link-197" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-197', 'format', 'link-43');">format</a></tt><tt class="py-op">=</tt><tt id="link-198" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-198', 'format', 'link-43');">format</a></tt><tt class="py-op">)</tt> </tt> <a name="L1150"></a><tt class="py-lineno">1150</tt> <tt class="py-line"> <tt id="link-199" class="py-name" targets="Method Bio.Crystal.Chain.count()=Bio.Crystal.Chain-class.html#count,Method Bio.NeuralNetwork.Gene.Pattern.PatternRepository.count()=Bio.NeuralNetwork.Gene.Pattern.PatternRepository-class.html#count,Method Bio.Seq.MutableSeq.count()=Bio.Seq.MutableSeq-class.html#count,Method Bio.Seq.Seq.count()=Bio.Seq.Seq-class.html#count,Function Bio.listfns.count()=Bio.listfns-module.html#count"><a title="Bio.Crystal.Chain.count Bio.NeuralNetwork.Gene.Pattern.PatternRepository.count Bio.Seq.MutableSeq.count Bio.Seq.Seq.count Bio.listfns.count" class="py-name" href="#" onclick="return doclink('link-199', 'count', 'link-199');">count</a></tt> <tt class="py-op">=</tt> <tt class="py-number">1</tt> </tt> <a name="L1151"></a><tt class="py-lineno">1151</tt> <tt class="py-line"> <tt id="link-200" class="py-name"><a title="Bio.expressions.blast.ncbiblast.alignment" class="py-name" href="#" onclick="return doclink('link-200', 'alignment', 'link-58');">alignment</a></tt> <tt class="py-op">=</tt> <tt class="py-name">iterator</tt><tt class="py-op">.</tt><tt id="link-201" class="py-name"><a title="Bio.AlignIO.ClustalIO.ClustalIterator.next Bio.AlignIO.EmbossIO.EmbossIterator.next Bio.AlignIO.FastaIO.FastaM10Iterator.next Bio.AlignIO.Interfaces.AlignmentIterator.next Bio.AlignIO.PhylipIO.PhylipIterator.next Bio.AlignIO.StockholmIO.StockholmIterator.next Bio.Blast.NCBIStandalone.Iterator.next Bio.Blast.ParseBlastTable.BlastTableReader.next Bio.CDD.Iterator.next Bio.Compass.Iterator.next Bio.DocSQL.IterationCursor.next Bio.ECell.Iterator.next Bio.Enzyme.Iterator.next Bio.Fasta.Iterator.next Bio.GenBank.Iterator.next Bio.Gobase.Iterator.next Bio.IntelliGenetics.IntelliGeneticsReader.next Bio.IntelliGenetics.Iterator.next Bio.LocusLink.Iterator.next Bio.Medline.Iterator.next Bio.MetaTool.Iterator.next Bio.NBRF.Iterator.next Bio.Nexus.Nexus.CharBuffer.next Bio.Prosite.Iterator.next Bio.Prosite.Prodoc.Iterator.next Bio.Rebase.Iterator.next Bio.SCOP.Cla.Iterator.next Bio.SCOP.Des.Iterator.next Bio.SCOP.Dom.Iterator.next Bio.SCOP.Hie.Iterator.next Bio.SCOP.Raf.Iterator.next Bio.Saf.Iterator.next Bio.SeqIO.Interfaces.InterlacedSequenceIterator.next Bio.SeqIO.Interfaces.SequenceIterator.next Bio.Sequencing.Ace.Iterator.next Bio.Sequencing.Phd.Iterator.next Bio.SwissProt.SProt.Iterator.next Bio.UniGene.Iterator.next Martel.Iterator.EventStream.next Martel.Iterator.HeaderFooterEventStream.next Martel.Iterator.Iterate.next Martel.Iterator.RecordEventStream.next Martel.RecordReader.CountLines.next Martel.RecordReader.EndsWith.next Martel.RecordReader.Everything.next Martel.RecordReader.Nothing.next Martel.RecordReader.RecordReader.next Martel.RecordReader.StartsWith.next Martel.RecordReader.Until.next" class="py-name" href="#" onclick="return doclink('link-201', 'next', 'link-109');">next</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt> <a name="L1152"></a><tt class="py-lineno">1152</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt id="link-202" class="py-name"><a title="Bio.expressions.blast.ncbiblast.alignment" class="py-name" href="#" onclick="return doclink('link-202', 'alignment', 'link-58');">alignment</a></tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> </tt> <a name="L1153"></a><tt class="py-lineno">1153</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt id="link-203" class="py-name"><a title="Bio.expressions.blast.ncbiblast.alignment" class="py-name" href="#" onclick="return doclink('link-203', 'alignment', 'link-58');">alignment</a></tt><tt class="py-op">.</tt><tt class="py-name">__class__</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-string">"Bio.Align.Generic.Alignment"</tt> </tt> <a name="L1154"></a><tt class="py-lineno">1154</tt> <tt class="py-line"> <tt class="py-comment">#print record</tt> </tt> <a name="L1155"></a><tt class="py-lineno">1155</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-keyword">for</tt> <tt id="link-204" class="py-name"><a title="Bio.expressions.blast.ncbiblast.alignment" class="py-name" href="#" onclick="return doclink('link-204', 'alignment', 'link-58');">alignment</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">iterator</tt> <tt class="py-op">:</tt> </tt> <a name="L1156"></a><tt class="py-lineno">1156</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt id="link-205" class="py-name"><a title="Bio.expressions.blast.ncbiblast.alignment" class="py-name" href="#" onclick="return doclink('link-205', 'alignment', 'link-58');">alignment</a></tt><tt class="py-op">.</tt><tt id="link-206" class="py-name"><a title="Bio.Align.Generic.Alignment.get_all_seqs" class="py-name" href="#" onclick="return doclink('link-206', 'get_all_seqs', 'link-62');">get_all_seqs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">as_list</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-207" class="py-name"><a title="Bio.Align.Generic.Alignment.get_all_seqs" class="py-name" href="#" onclick="return doclink('link-207', 'get_all_seqs', 'link-62');">get_all_seqs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt> <a name="L1157"></a><tt class="py-lineno">1157</tt> <tt class="py-line"> <tt id="link-208" class="py-name"><a title="Bio.Crystal.Chain.count Bio.NeuralNetwork.Gene.Pattern.PatternRepository.count Bio.Seq.MutableSeq.count Bio.Seq.Seq.count Bio.listfns.count" class="py-name" href="#" onclick="return doclink('link-208', 'count', 'link-199');">count</a></tt> <tt class="py-op">=</tt> <tt id="link-209" class="py-name"><a title="Bio.Crystal.Chain.count Bio.NeuralNetwork.Gene.Pattern.PatternRepository.count Bio.Seq.MutableSeq.count Bio.Seq.Seq.count Bio.listfns.count" class="py-name" href="#" onclick="return doclink('link-209', 'count', 'link-199');">count</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt> <a name="L1158"></a><tt class="py-lineno">1158</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt id="link-210" class="py-name"><a title="Bio.Crystal.Chain.count Bio.NeuralNetwork.Gene.Pattern.PatternRepository.count Bio.Seq.MutableSeq.count Bio.Seq.Seq.count Bio.listfns.count" class="py-name" href="#" onclick="return doclink('link-210', 'count', 'link-199');">count</a></tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">as_list</tt><tt class="py-op">)</tt> </tt> <a name="L1159"></a><tt class="py-lineno">1159</tt> <tt class="py-line"> </tt> <a name="L1160"></a><tt class="py-lineno">1160</tt> <tt class="py-line"> <tt class="py-comment">#Test iteration using just next() method</tt> </tt> <a name="L1161"></a><tt class="py-lineno">1161</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-name">iterator</tt> <tt class="py-op">=</tt> <tt id="link-211" class="py-name"><a title="Bio.Affy.CelFile.CelParser.parse Bio.AlignAce.Parser.AlignAceParser.parse Bio.AlignAce.Parser.CompareAceParser.parse Bio.AlignIO.parse Bio.Blast.NCBIStandalone.BlastErrorParser.parse Bio.Blast.NCBIStandalone.BlastParser.parse Bio.Blast.NCBIStandalone.PSIBlastParser.parse Bio.Blast.NCBIWWW.BlastParser.parse Bio.Blast.NCBIXML.BlastParser.parse Bio.Blast.NCBIXML.parse Bio.CDD.RecordParser.parse Bio.Compass.RecordParser.parse Bio.Decode.parse Bio.ECell.RecordParser.parse Bio.EUtils.POM.POMDocument.parse Bio.EUtils.parse Bio.Emboss.Primer.Primer3Parser.parse Bio.Emboss.Primer.PrimerSearchParser.parse Bio.Enzyme.RecordParser.parse Bio.Fasta.RecordParser.parse Bio.Fasta.SequenceParser.parse Bio.GenBank.FeatureParser.parse Bio.GenBank.LocationParser.parse Bio.GenBank.RecordParser.parse Bio.GenBank.Scanner.InsdcScanner.parse Bio.Geo.parse Bio.Gobase.RecordParser.parse Bio.IntelliGenetics.RecordParser.parse Bio.InterPro.InterProParser.parse Bio.KEGG.Compound.parse Bio.KEGG.Enzyme.parse Bio.KEGG.Map.parse Bio.LocusLink.RecordParser.parse Bio.LocusLink.web_parse.LocusLinkParser.parse Bio.MEME.Parser.MASTParser.parse Bio.MEME.Parser.MEMEParser.parse Bio.Medline.RecordParser.parse Bio.MetaTool.RecordParser.parse Bio.NBRF.RecordParser.parse Bio.Ndb.NdbParser.parse Bio.ParserSupport.AbstractParser.parse Bio.Parsers.spark.GenericParser.parse Bio.PopGen.FDist.RecordParser.parse Bio.PopGen.GenePop.RecordParser.parse Bio.PopGen.GenePop.parse Bio.Prosite.Prodoc.RecordParser.parse Bio.Prosite.Prodoc.parse Bio.Prosite.RecordParser.parse Bio.Prosite.parse Bio.Rebase.RecordParser.parse Bio.SCOP.Cla.Parser.parse Bio.SCOP.Cla.parse Bio.SCOP.Des.Parser.parse Bio.SCOP.Des.parse Bio.SCOP.Dom.Parser.parse Bio.SCOP.Dom.parse Bio.SCOP.Hie.Parser.parse Bio.SCOP.Hie.parse Bio.SCOP.Raf.Parser.parse Bio.SCOP.Raf.parse Bio.Saf.RecordParser.parse Bio.SeqIO.parse Bio.Sequencing.Ace.ACEParser.parse Bio.Sequencing.Ace.RecordParser.parse Bio.Sequencing.Phd.RecordParser.parse Bio.SwissProt.KeyWList.ListParser.parse Bio.SwissProt.KeyWList.parse Bio.SwissProt.SProt.RecordParser.parse Bio.SwissProt.SProt.SequenceParser.parse Bio.SwissProt.parse Bio.UniGene.RecordParser.parse Bio.Wise.psw.parse Martel.Parser.HeaderFooterParser.parse Martel.Parser.Parser.parse Martel.Parser.RecordParser.parse Martel.msre_parse.parse" class="py-name" href="#" onclick="return doclink('link-211', 'parse', 'link-71');">parse</a></tt><tt class="py-op">(</tt><tt class="py-name">StringIO</tt><tt class="py-op">(</tt><tt id="link-212" class="py-name"><a title="BioSQL.BioSeq.DBSeq.data" class="py-name" href="#" onclick="return doclink('link-212', 'data', 'link-146');">data</a></tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt id="link-213" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-213', 'format', 'link-43');">format</a></tt><tt class="py-op">=</tt><tt id="link-214" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-214', 'format', 'link-43');">format</a></tt><tt class="py-op">)</tt> </tt> <a name="L1162"></a><tt class="py-lineno">1162</tt> <tt class="py-line"> <tt id="link-215" class="py-name"><a title="Bio.Crystal.Chain.count Bio.NeuralNetwork.Gene.Pattern.PatternRepository.count Bio.Seq.MutableSeq.count Bio.Seq.Seq.count Bio.listfns.count" class="py-name" href="#" onclick="return doclink('link-215', 'count', 'link-199');">count</a></tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt> <a name="L1163"></a><tt class="py-lineno">1163</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt id="link-216" class="py-name"><a title="Bio.EUtils.POM.True" class="py-name" href="#" onclick="return doclink('link-216', 'True', 'link-136');">True</a></tt> <tt class="py-op">:</tt> </tt> <a name="L1164"></a><tt class="py-lineno">1164</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt> <a name="L1165"></a><tt class="py-lineno">1165</tt> <tt class="py-line"> <tt id="link-217" class="py-name"><a title="Bio.expressions.blast.ncbiblast.alignment" class="py-name" href="#" onclick="return doclink('link-217', 'alignment', 'link-58');">alignment</a></tt> <tt class="py-op">=</tt> <tt class="py-name">iterator</tt><tt class="py-op">.</tt><tt id="link-218" class="py-name"><a title="Bio.AlignIO.ClustalIO.ClustalIterator.next Bio.AlignIO.EmbossIO.EmbossIterator.next Bio.AlignIO.FastaIO.FastaM10Iterator.next Bio.AlignIO.Interfaces.AlignmentIterator.next Bio.AlignIO.PhylipIO.PhylipIterator.next Bio.AlignIO.StockholmIO.StockholmIterator.next Bio.Blast.NCBIStandalone.Iterator.next Bio.Blast.ParseBlastTable.BlastTableReader.next Bio.CDD.Iterator.next Bio.Compass.Iterator.next Bio.DocSQL.IterationCursor.next Bio.ECell.Iterator.next Bio.Enzyme.Iterator.next Bio.Fasta.Iterator.next Bio.GenBank.Iterator.next Bio.Gobase.Iterator.next Bio.IntelliGenetics.IntelliGeneticsReader.next Bio.IntelliGenetics.Iterator.next Bio.LocusLink.Iterator.next Bio.Medline.Iterator.next Bio.MetaTool.Iterator.next Bio.NBRF.Iterator.next Bio.Nexus.Nexus.CharBuffer.next Bio.Prosite.Iterator.next Bio.Prosite.Prodoc.Iterator.next Bio.Rebase.Iterator.next Bio.SCOP.Cla.Iterator.next Bio.SCOP.Des.Iterator.next Bio.SCOP.Dom.Iterator.next Bio.SCOP.Hie.Iterator.next Bio.SCOP.Raf.Iterator.next Bio.Saf.Iterator.next Bio.SeqIO.Interfaces.InterlacedSequenceIterator.next Bio.SeqIO.Interfaces.SequenceIterator.next Bio.Sequencing.Ace.Iterator.next Bio.Sequencing.Phd.Iterator.next Bio.SwissProt.SProt.Iterator.next Bio.UniGene.Iterator.next Martel.Iterator.EventStream.next Martel.Iterator.HeaderFooterEventStream.next Martel.Iterator.Iterate.next Martel.Iterator.RecordEventStream.next Martel.RecordReader.CountLines.next Martel.RecordReader.EndsWith.next Martel.RecordReader.Everything.next Martel.RecordReader.Nothing.next Martel.RecordReader.RecordReader.next Martel.RecordReader.StartsWith.next Martel.RecordReader.Until.next" class="py-name" href="#" onclick="return doclink('link-218', 'next', 'link-109');">next</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt> <a name="L1166"></a><tt class="py-lineno">1166</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">StopIteration</tt> <tt class="py-op">:</tt> </tt> <a name="L1167"></a><tt class="py-lineno">1167</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt> <a name="L1168"></a><tt class="py-lineno">1168</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-219" class="py-name"><a title="Bio.expressions.blast.ncbiblast.alignment" class="py-name" href="#" onclick="return doclink('link-219', 'alignment', 'link-58');">alignment</a></tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt> <tt class="py-op">:</tt> <tt class="py-keyword">break</tt> </tt> <a name="L1169"></a><tt class="py-lineno">1169</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt id="link-220" class="py-name"><a title="Bio.expressions.blast.ncbiblast.alignment" class="py-name" href="#" onclick="return doclink('link-220', 'alignment', 'link-58');">alignment</a></tt><tt class="py-op">.</tt><tt id="link-221" class="py-name"><a title="Bio.Align.Generic.Alignment.get_all_seqs" class="py-name" href="#" onclick="return doclink('link-221', 'get_all_seqs', 'link-62');">get_all_seqs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">as_list</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-222" class="py-name"><a title="Bio.Align.Generic.Alignment.get_all_seqs" class="py-name" href="#" onclick="return doclink('link-222', 'get_all_seqs', 'link-62');">get_all_seqs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt> <a name="L1170"></a><tt class="py-lineno">1170</tt> <tt class="py-line"> <tt id="link-223" class="py-name"><a title="Bio.Crystal.Chain.count Bio.NeuralNetwork.Gene.Pattern.PatternRepository.count Bio.Seq.MutableSeq.count Bio.Seq.Seq.count Bio.listfns.count" class="py-name" href="#" onclick="return doclink('link-223', 'count', 'link-199');">count</a></tt> <tt class="py-op">=</tt> <tt id="link-224" class="py-name"><a title="Bio.Crystal.Chain.count Bio.NeuralNetwork.Gene.Pattern.PatternRepository.count Bio.Seq.MutableSeq.count Bio.Seq.Seq.count Bio.listfns.count" class="py-name" href="#" onclick="return doclink('link-224', 'count', 'link-199');">count</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt> <a name="L1171"></a><tt class="py-lineno">1171</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt id="link-225" class="py-name"><a title="Bio.Crystal.Chain.count Bio.NeuralNetwork.Gene.Pattern.PatternRepository.count Bio.Seq.MutableSeq.count Bio.Seq.Seq.count Bio.listfns.count" class="py-name" href="#" onclick="return doclink('link-225', 'count', 'link-199');">count</a></tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">as_list</tt><tt class="py-op">)</tt> </tt> <a name="L1172"></a><tt class="py-lineno">1172</tt> <tt class="py-line"> </tt> <a name="L1173"></a><tt class="py-lineno">1173</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"parse(handle)"</tt> </tt> <a name="L1174"></a><tt class="py-lineno">1174</tt> <tt class="py-line"> <tt class="py-name">iterator</tt> <tt class="py-op">=</tt> <tt id="link-226" class="py-name"><a title="Bio.Affy.CelFile.CelParser.parse Bio.AlignAce.Parser.AlignAceParser.parse Bio.AlignAce.Parser.CompareAceParser.parse Bio.AlignIO.parse Bio.Blast.NCBIStandalone.BlastErrorParser.parse Bio.Blast.NCBIStandalone.BlastParser.parse Bio.Blast.NCBIStandalone.PSIBlastParser.parse Bio.Blast.NCBIWWW.BlastParser.parse Bio.Blast.NCBIXML.BlastParser.parse Bio.Blast.NCBIXML.parse Bio.CDD.RecordParser.parse Bio.Compass.RecordParser.parse Bio.Decode.parse Bio.ECell.RecordParser.parse Bio.EUtils.POM.POMDocument.parse Bio.EUtils.parse Bio.Emboss.Primer.Primer3Parser.parse Bio.Emboss.Primer.PrimerSearchParser.parse Bio.Enzyme.RecordParser.parse Bio.Fasta.RecordParser.parse Bio.Fasta.SequenceParser.parse Bio.GenBank.FeatureParser.parse Bio.GenBank.LocationParser.parse Bio.GenBank.RecordParser.parse Bio.GenBank.Scanner.InsdcScanner.parse Bio.Geo.parse Bio.Gobase.RecordParser.parse Bio.IntelliGenetics.RecordParser.parse Bio.InterPro.InterProParser.parse Bio.KEGG.Compound.parse Bio.KEGG.Enzyme.parse Bio.KEGG.Map.parse Bio.LocusLink.RecordParser.parse Bio.LocusLink.web_parse.LocusLinkParser.parse Bio.MEME.Parser.MASTParser.parse Bio.MEME.Parser.MEMEParser.parse Bio.Medline.RecordParser.parse Bio.MetaTool.RecordParser.parse Bio.NBRF.RecordParser.parse Bio.Ndb.NdbParser.parse Bio.ParserSupport.AbstractParser.parse Bio.Parsers.spark.GenericParser.parse Bio.PopGen.FDist.RecordParser.parse Bio.PopGen.GenePop.RecordParser.parse Bio.PopGen.GenePop.parse Bio.Prosite.Prodoc.RecordParser.parse Bio.Prosite.Prodoc.parse Bio.Prosite.RecordParser.parse Bio.Prosite.parse Bio.Rebase.RecordParser.parse Bio.SCOP.Cla.Parser.parse Bio.SCOP.Cla.parse Bio.SCOP.Des.Parser.parse Bio.SCOP.Des.parse Bio.SCOP.Dom.Parser.parse Bio.SCOP.Dom.parse Bio.SCOP.Hie.Parser.parse Bio.SCOP.Hie.parse Bio.SCOP.Raf.Parser.parse Bio.SCOP.Raf.parse Bio.Saf.RecordParser.parse Bio.SeqIO.parse Bio.Sequencing.Ace.ACEParser.parse Bio.Sequencing.Ace.RecordParser.parse Bio.Sequencing.Phd.RecordParser.parse Bio.SwissProt.KeyWList.ListParser.parse Bio.SwissProt.KeyWList.parse Bio.SwissProt.SProt.RecordParser.parse Bio.SwissProt.SProt.SequenceParser.parse Bio.SwissProt.parse Bio.UniGene.RecordParser.parse Bio.Wise.psw.parse Martel.Parser.HeaderFooterParser.parse Martel.Parser.Parser.parse Martel.Parser.RecordParser.parse Martel.msre_parse.parse" class="py-name" href="#" onclick="return doclink('link-226', 'parse', 'link-71');">parse</a></tt><tt class="py-op">(</tt><tt class="py-name">StringIO</tt><tt class="py-op">(</tt><tt id="link-227" class="py-name"><a title="BioSQL.BioSeq.DBSeq.data" class="py-name" href="#" onclick="return doclink('link-227', 'data', 'link-146');">data</a></tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt id="link-228" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-228', 'format', 'link-43');">format</a></tt><tt class="py-op">=</tt><tt id="link-229" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-229', 'format', 'link-43');">format</a></tt><tt class="py-op">)</tt> </tt> <a name="L1175"></a><tt class="py-lineno">1175</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-op">(</tt><tt id="link-230" class="py-name" targets="Variable Bio.PDB.Polypeptide.i=Bio.PDB.Polypeptide-module.html#i"><a title="Bio.PDB.Polypeptide.i" class="py-name" href="#" onclick="return doclink('link-230', 'i', 'link-230');">i</a></tt><tt class="py-op">,</tt> <tt id="link-231" class="py-name"><a title="Bio.expressions.blast.ncbiblast.alignment" class="py-name" href="#" onclick="return doclink('link-231', 'alignment', 'link-58');">alignment</a></tt><tt class="py-op">)</tt> <tt class="py-keyword">in</tt> <tt class="py-name">enumerate</tt><tt class="py-op">(</tt><tt class="py-name">iterator</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt> <a name="L1176"></a><tt class="py-lineno">1176</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt> <a name="L1177"></a><tt class="py-lineno">1177</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt id="link-232" class="py-name"><a title="Bio.PDB.Polypeptide.i" class="py-name" href="#" onclick="return doclink('link-232', 'i', 'link-230');">i</a></tt><tt class="py-op">+</tt><tt class="py-number">1</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">as_list</tt><tt class="py-op">)</tt> </tt> <a name="L1178"></a><tt class="py-lineno">1178</tt> <tt class="py-line"> </tt> <a name="L1179"></a><tt class="py-lineno">1179</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-233" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-233', 'format', 'link-43');">format</a></tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-op">[</tt><tt class="py-string">"nexus"</tt><tt class="py-op">]</tt> <tt class="py-op">:</tt> </tt> <a name="L1180"></a><tt class="py-lineno">1180</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Triple copy of data"</tt> </tt> <a name="L1181"></a><tt class="py-lineno">1181</tt> <tt class="py-line"> <tt class="py-comment">#Basic check, turning the iterator into a list...</tt> </tt> <a name="L1182"></a><tt class="py-lineno">1182</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-comment">#This uses "for x in iterator" interally.</tt> </tt> <a name="L1183"></a><tt class="py-lineno">1183</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-name">iterator</tt> <tt class="py-op">=</tt> <tt id="link-234" class="py-name"><a title="Bio.Affy.CelFile.CelParser.parse Bio.AlignAce.Parser.AlignAceParser.parse Bio.AlignAce.Parser.CompareAceParser.parse Bio.AlignIO.parse Bio.Blast.NCBIStandalone.BlastErrorParser.parse Bio.Blast.NCBIStandalone.BlastParser.parse Bio.Blast.NCBIStandalone.PSIBlastParser.parse Bio.Blast.NCBIWWW.BlastParser.parse Bio.Blast.NCBIXML.BlastParser.parse Bio.Blast.NCBIXML.parse Bio.CDD.RecordParser.parse Bio.Compass.RecordParser.parse Bio.Decode.parse Bio.ECell.RecordParser.parse Bio.EUtils.POM.POMDocument.parse Bio.EUtils.parse Bio.Emboss.Primer.Primer3Parser.parse Bio.Emboss.Primer.PrimerSearchParser.parse Bio.Enzyme.RecordParser.parse Bio.Fasta.RecordParser.parse Bio.Fasta.SequenceParser.parse Bio.GenBank.FeatureParser.parse Bio.GenBank.LocationParser.parse Bio.GenBank.RecordParser.parse Bio.GenBank.Scanner.InsdcScanner.parse Bio.Geo.parse Bio.Gobase.RecordParser.parse Bio.IntelliGenetics.RecordParser.parse Bio.InterPro.InterProParser.parse Bio.KEGG.Compound.parse Bio.KEGG.Enzyme.parse Bio.KEGG.Map.parse Bio.LocusLink.RecordParser.parse Bio.LocusLink.web_parse.LocusLinkParser.parse Bio.MEME.Parser.MASTParser.parse Bio.MEME.Parser.MEMEParser.parse Bio.Medline.RecordParser.parse Bio.MetaTool.RecordParser.parse Bio.NBRF.RecordParser.parse Bio.Ndb.NdbParser.parse Bio.ParserSupport.AbstractParser.parse Bio.Parsers.spark.GenericParser.parse Bio.PopGen.FDist.RecordParser.parse Bio.PopGen.GenePop.RecordParser.parse Bio.PopGen.GenePop.parse Bio.Prosite.Prodoc.RecordParser.parse Bio.Prosite.Prodoc.parse Bio.Prosite.RecordParser.parse Bio.Prosite.parse Bio.Rebase.RecordParser.parse Bio.SCOP.Cla.Parser.parse Bio.SCOP.Cla.parse Bio.SCOP.Des.Parser.parse Bio.SCOP.Des.parse Bio.SCOP.Dom.Parser.parse Bio.SCOP.Dom.parse Bio.SCOP.Hie.Parser.parse Bio.SCOP.Hie.parse Bio.SCOP.Raf.Parser.parse Bio.SCOP.Raf.parse Bio.Saf.RecordParser.parse Bio.SeqIO.parse Bio.Sequencing.Ace.ACEParser.parse Bio.Sequencing.Ace.RecordParser.parse Bio.Sequencing.Phd.RecordParser.parse Bio.SwissProt.KeyWList.ListParser.parse Bio.SwissProt.KeyWList.parse Bio.SwissProt.SProt.RecordParser.parse Bio.SwissProt.SProt.SequenceParser.parse Bio.SwissProt.parse Bio.UniGene.RecordParser.parse Bio.Wise.psw.parse Martel.Parser.HeaderFooterParser.parse Martel.Parser.Parser.parse Martel.Parser.RecordParser.parse Martel.msre_parse.parse" class="py-name" href="#" onclick="return doclink('link-234', 'parse', 'link-71');">parse</a></tt><tt class="py-op">(</tt><tt class="py-name">StringIO</tt><tt class="py-op">(</tt><tt id="link-235" class="py-name"><a title="BioSQL.BioSeq.DBSeq.data" class="py-name" href="#" onclick="return doclink('link-235', 'data', 'link-146');">data</a></tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">+</tt> <tt id="link-236" class="py-name"><a title="BioSQL.BioSeq.DBSeq.data" class="py-name" href="#" onclick="return doclink('link-236', 'data', 'link-146');">data</a></tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">+</tt> <tt id="link-237" class="py-name"><a title="BioSQL.BioSeq.DBSeq.data" class="py-name" href="#" onclick="return doclink('link-237', 'data', 'link-146');">data</a></tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt id="link-238" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-238', 'format', 'link-43');">format</a></tt><tt class="py-op">=</tt><tt id="link-239" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-239', 'format', 'link-43');">format</a></tt><tt class="py-op">)</tt> </tt> <a name="L1184"></a><tt class="py-lineno">1184</tt> <tt class="py-line"> <tt class="py-name">triple_list</tt> <tt class="py-op">=</tt> <tt id="link-240" class="py-name"><a title="Bio.Pathway.Rep.HashSet.HashSet.list" class="py-name" href="#" onclick="return doclink('link-240', 'list', 'link-79');">list</a></tt><tt class="py-op">(</tt><tt class="py-name">iterator</tt><tt class="py-op">)</tt> </tt> <a name="L1185"></a><tt class="py-lineno">1185</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-241" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-241', 'format', 'link-43');">format</a></tt> <tt class="py-keyword">in</tt> <tt id="link-242" class="py-name"><a title="Bio.AlignIO._FormatToIterator Bio.SeqIO._FormatToIterator" class="py-name" href="#" onclick="return doclink('link-242', '_FormatToIterator', 'link-20');">_FormatToIterator</a></tt> <tt class="py-op">:</tt> </tt> <a name="L1186"></a><tt class="py-lineno">1186</tt> <tt class="py-line"> <tt class="py-comment">#This format should be understood, so three alignments</tt> </tt> <a name="L1187"></a><tt class="py-lineno">1187</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-keyword">assert</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">triple_list</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">3</tt> </tt> <a name="L1188"></a><tt class="py-lineno">1188</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">a</tt> <tt class="py-keyword">in</tt> <tt class="py-name">triple_list</tt> <tt class="py-op">:</tt> </tt> <a name="L1189"></a><tt class="py-lineno">1189</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">a</tt><tt class="py-op">.</tt><tt id="link-243" class="py-name"><a title="Bio.Align.Generic.Alignment.get_all_seqs" class="py-name" href="#" onclick="return doclink('link-243', 'get_all_seqs', 'link-62');">get_all_seqs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">rec_count</tt> </tt> <a name="L1190"></a><tt class="py-lineno">1190</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt> <a name="L1191"></a><tt class="py-lineno">1191</tt> <tt class="py-line"> <tt class="py-comment">#We have forced this format into a single alignment</tt> </tt> <a name="L1192"></a><tt class="py-lineno">1192</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-keyword">assert</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">triple_list</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt> </tt> <a name="L1193"></a><tt class="py-lineno">1193</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">triple_list</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-244" class="py-name"><a title="Bio.Align.Generic.Alignment.get_all_seqs" class="py-name" href="#" onclick="return doclink('link-244', 'get_all_seqs', 'link-62');">get_all_seqs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">3</tt> <tt class="py-op">*</tt> <tt class="py-name">rec_count</tt> </tt> <a name="L1194"></a><tt class="py-lineno">1194</tt> <tt class="py-line"> </tt> <a name="L1195"></a><tt class="py-lineno">1195</tt> <tt class="py-line"> <tt class="py-comment">#Try with explicit count argument</tt> </tt> <a name="L1196"></a><tt class="py-lineno">1196</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-keyword">assert</tt> <tt class="py-number">3</tt><tt class="py-op">==</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt id="link-245" class="py-name"><a title="Bio.Pathway.Rep.HashSet.HashSet.list" class="py-name" href="#" onclick="return doclink('link-245', 'list', 'link-79');">list</a></tt><tt class="py-op">(</tt><tt id="link-246" class="py-name"><a title="Bio.Affy.CelFile.CelParser.parse Bio.AlignAce.Parser.AlignAceParser.parse Bio.AlignAce.Parser.CompareAceParser.parse Bio.AlignIO.parse Bio.Blast.NCBIStandalone.BlastErrorParser.parse Bio.Blast.NCBIStandalone.BlastParser.parse Bio.Blast.NCBIStandalone.PSIBlastParser.parse Bio.Blast.NCBIWWW.BlastParser.parse Bio.Blast.NCBIXML.BlastParser.parse Bio.Blast.NCBIXML.parse Bio.CDD.RecordParser.parse Bio.Compass.RecordParser.parse Bio.Decode.parse Bio.ECell.RecordParser.parse Bio.EUtils.POM.POMDocument.parse Bio.EUtils.parse Bio.Emboss.Primer.Primer3Parser.parse Bio.Emboss.Primer.PrimerSearchParser.parse Bio.Enzyme.RecordParser.parse Bio.Fasta.RecordParser.parse Bio.Fasta.SequenceParser.parse Bio.GenBank.FeatureParser.parse Bio.GenBank.LocationParser.parse Bio.GenBank.RecordParser.parse Bio.GenBank.Scanner.InsdcScanner.parse Bio.Geo.parse Bio.Gobase.RecordParser.parse Bio.IntelliGenetics.RecordParser.parse Bio.InterPro.InterProParser.parse Bio.KEGG.Compound.parse Bio.KEGG.Enzyme.parse Bio.KEGG.Map.parse Bio.LocusLink.RecordParser.parse Bio.LocusLink.web_parse.LocusLinkParser.parse Bio.MEME.Parser.MASTParser.parse Bio.MEME.Parser.MEMEParser.parse Bio.Medline.RecordParser.parse Bio.MetaTool.RecordParser.parse Bio.NBRF.RecordParser.parse Bio.Ndb.NdbParser.parse Bio.ParserSupport.AbstractParser.parse Bio.Parsers.spark.GenericParser.parse Bio.PopGen.FDist.RecordParser.parse Bio.PopGen.GenePop.RecordParser.parse Bio.PopGen.GenePop.parse Bio.Prosite.Prodoc.RecordParser.parse Bio.Prosite.Prodoc.parse Bio.Prosite.RecordParser.parse Bio.Prosite.parse Bio.Rebase.RecordParser.parse Bio.SCOP.Cla.Parser.parse Bio.SCOP.Cla.parse Bio.SCOP.Des.Parser.parse Bio.SCOP.Des.parse Bio.SCOP.Dom.Parser.parse Bio.SCOP.Dom.parse Bio.SCOP.Hie.Parser.parse Bio.SCOP.Hie.parse Bio.SCOP.Raf.Parser.parse Bio.SCOP.Raf.parse Bio.Saf.RecordParser.parse Bio.SeqIO.parse Bio.Sequencing.Ace.ACEParser.parse Bio.Sequencing.Ace.RecordParser.parse Bio.Sequencing.Phd.RecordParser.parse Bio.SwissProt.KeyWList.ListParser.parse Bio.SwissProt.KeyWList.parse Bio.SwissProt.SProt.RecordParser.parse Bio.SwissProt.SProt.SequenceParser.parse Bio.SwissProt.parse Bio.UniGene.RecordParser.parse Bio.Wise.psw.parse Martel.Parser.HeaderFooterParser.parse Martel.Parser.Parser.parse Martel.Parser.RecordParser.parse Martel.msre_parse.parse" class="py-name" href="#" onclick="return doclink('link-246', 'parse', 'link-71');">parse</a></tt><tt class="py-op">(</tt><tt class="py-name">StringIO</tt><tt class="py-op">(</tt><tt id="link-247" class="py-name"><a title="BioSQL.BioSeq.DBSeq.data" class="py-name" href="#" onclick="return doclink('link-247', 'data', 'link-146');">data</a></tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">+</tt> <tt id="link-248" class="py-name"><a title="BioSQL.BioSeq.DBSeq.data" class="py-name" href="#" onclick="return doclink('link-248', 'data', 'link-146');">data</a></tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">+</tt> <tt id="link-249" class="py-name"><a title="BioSQL.BioSeq.DBSeq.data" class="py-name" href="#" onclick="return doclink('link-249', 'data', 'link-146');">data</a></tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt id="link-250" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-250', 'format', 'link-43');">format</a></tt><tt class="py-op">,</tt> <tt class="py-name">rec_count</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt> <a name="L1197"></a><tt class="py-lineno">1197</tt> <tt class="py-line"> </tt> <a name="L1198"></a><tt class="py-lineno">1198</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt> <a name="L1199"></a><tt class="py-lineno">1199</tt> <tt class="py-line"> <tt id="link-251" class="py-name"><a title="Bio.expressions.blast.ncbiblast.alignment" class="py-name" href="#" onclick="return doclink('link-251', 'alignment', 'link-58');">alignment</a></tt> <tt class="py-op">=</tt> <tt id="link-252" class="py-name"><a title="Bio.AlignAce.Motif.Motif.read Bio.AlignIO.read Bio.Cluster.read Bio.EUtils.ReseekFile.ReseekFile.read Bio.Entrez.read Bio.File.SGMLHandle.read Bio.File.UndoHandle.read Bio.FilteredReader.FilteredReader.read Bio.NeuralNetwork.Gene.Pattern.PatternIO.read Bio.Nexus.Nexus.Nexus.read Bio.Prosite.Prodoc.read Bio.Prosite.read Bio.SGMLExtractor.SGMLExtractorHandle.read Bio.SeqIO.read Bio.SwissProt.read" class="py-name" href="#" onclick="return doclink('link-252', 'read', 'link-151');">read</a></tt><tt class="py-op">(</tt><tt class="py-name">StringIO</tt><tt class="py-op">(</tt><tt id="link-253" class="py-name"><a title="BioSQL.BioSeq.DBSeq.data" class="py-name" href="#" onclick="return doclink('link-253', 'data', 'link-146');">data</a></tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">+</tt> <tt id="link-254" class="py-name"><a title="BioSQL.BioSeq.DBSeq.data" class="py-name" href="#" onclick="return doclink('link-254', 'data', 'link-146');">data</a></tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">+</tt> <tt id="link-255" class="py-name"><a title="BioSQL.BioSeq.DBSeq.data" class="py-name" href="#" onclick="return doclink('link-255', 'data', 'link-146');">data</a></tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt id="link-256" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-256', 'format', 'link-43');">format</a></tt><tt class="py-op">,</tt> <tt class="py-name">rec_count</tt><tt class="py-op">)</tt> </tt> <a name="L1200"></a><tt class="py-lineno">1200</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt id="link-257" class="py-name"><a title="Bio.EUtils.POM.False" class="py-name" href="#" onclick="return doclink('link-257', 'False', 'link-127');">False</a></tt><tt class="py-op">,</tt> <tt class="py-string">"Should have failed"</tt> </tt> <a name="L1201"></a><tt class="py-lineno">1201</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">ValueError</tt> <tt class="py-op">:</tt> </tt> <a name="L1202"></a><tt class="py-lineno">1202</tt> <tt class="py-line"> <tt class="py-comment">#Failed, good</tt> </tt> <a name="L1203"></a><tt class="py-lineno">1203</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-keyword">pass</tt> </tt> <a name="L1204"></a><tt class="py-lineno">1204</tt> <tt class="py-line"> </tt> <a name="L1205"></a><tt class="py-lineno">1205</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">out_format</tt> <tt class="py-keyword">in</tt> <tt id="link-258" class="py-name"><a title="Bio.AlignIO._FormatToWriter Bio.SeqIO._FormatToWriter" class="py-name" href="#" onclick="return doclink('link-258', '_FormatToWriter', 'link-33');">_FormatToWriter</a></tt> <tt class="py-op">:</tt> </tt> <a name="L1206"></a><tt class="py-lineno">1206</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"writing to %s"</tt> <tt class="py-op">%</tt> <tt class="py-name">out_format</tt> </tt> <a name="L1207"></a><tt class="py-lineno">1207</tt> <tt class="py-line"> <tt class="py-comment">#Going to write to a handle...</tt> </tt> <a name="L1208"></a><tt class="py-lineno">1208</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt id="link-259" class="py-name"><a title="Bio.LocusLink.web_parse.handle Bio.Ndb.handle" class="py-name" href="#" onclick="return doclink('link-259', 'handle', 'link-42');">handle</a></tt> <tt class="py-op">=</tt> <tt class="py-name">StringIO</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt> <a name="L1209"></a><tt class="py-lineno">1209</tt> <tt class="py-line"> </tt> <a name="L1210"></a><tt class="py-lineno">1210</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt> <a name="L1211"></a><tt class="py-lineno">1211</tt> <tt class="py-line"> <tt id="link-260" class="py-name"><a title="Bio.AlignAce.Motif.Motif.write Bio.AlignIO.write Bio.EUtils.sourcegen.SourceFile.write Bio.EUtils.sourcegen.SourceGen.write Bio.NeuralNetwork.Gene.Pattern.PatternIO.write Bio.SeqIO.write Bio.Writer.Writer.write Bio.writers.SeqRecord.embl.WriteEmbl.write Bio.writers.SeqRecord.fasta.WriteFasta.write" class="py-name" href="#" onclick="return doclink('link-260', 'write', 'link-60');">write</a></tt><tt class="py-op">(</tt><tt class="py-name">as_list</tt><tt class="py-op">,</tt> <tt id="link-261" class="py-name"><a title="Bio.LocusLink.web_parse.handle Bio.Ndb.handle" class="py-name" href="#" onclick="return doclink('link-261', 'handle', 'link-42');">handle</a></tt><tt class="py-op">=</tt><tt id="link-262" class="py-name"><a title="Bio.LocusLink.web_parse.handle Bio.Ndb.handle" class="py-name" href="#" onclick="return doclink('link-262', 'handle', 'link-42');">handle</a></tt><tt class="py-op">,</tt> <tt id="link-263" class="py-name"><a title="Bio.Restriction.Restriction.RestrictionBatch.format Bio.expressions.blast.ncbiblast.format Bio.expressions.blast.wublast.format Bio.expressions.blocks.format Bio.expressions.embl.embl65.format Bio.expressions.fasta.format Bio.expressions.genbank.format Bio.expressions.hmmpfam.format Bio.expressions.swissprot.ipi.format Bio.expressions.swissprot.speclist.format Bio.expressions.swissprot.sprot38.format Bio.expressions.swissprot.sprot40.format Bio.expressions.transfac.format Martel.test.test_swissprot38.format Martel.test.testformats.swissprot38.format" class="py-name" href="#" onclick="return doclink('link-263', 'format', 'link-43');">format</a></tt><tt class="py-op">=</tt><tt class="py-name">out_format</tt><tt class="py-op">)</tt> </tt> <a name="L1212"></a><tt class="py-lineno">1212</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt id="link-264" class="py-name"><a title="Bio.Affy.CelFile.e Bio.LogisticRegression.e Bio.MarkovModel.e Bio.MaxEntropy.e Bio.NaiveBayes.e Bio.Statistics.lowess.e Bio.distance.e Bio.kNN.e" class="py-name" href="#" onclick="return doclink('link-264', 'e', 'link-190');">e</a></tt> <tt class="py-op">:</tt> </tt> <a name="L1213"></a><tt class="py-lineno">1213</tt> <tt class="py-line"> <tt class="py-comment">#This is often expected to happen, for example when we try and</tt> </tt> <a name="L1214"></a><tt class="py-lineno">1214</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-comment">#write sequences of different lengths to an alignment file.</tt> </tt> <a name="L1215"></a><tt class="py-lineno">1215</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-keyword">print</tt> <tt class="py-string">"Failed: %s"</tt> <tt class="py-op">%</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt id="link-265" class="py-name"><a title="Bio.Affy.CelFile.e Bio.LogisticRegression.e Bio.MarkovModel.e Bio.MaxEntropy.e Bio.NaiveBayes.e Bio.Statistics.lowess.e Bio.distance.e Bio.kNN.e" class="py-name" href="#" onclick="return doclink('link-265', 'e', 'link-190');">e</a></tt><tt class="py-op">)</tt> </tt> <a name="L1216"></a><tt class="py-lineno">1216</tt> <tt class="py-line"> <tt class="py-comment">#Carry on to the next format:</tt> </tt> <a name="L1217"></a><tt class="py-lineno">1217</tt> <tt class="py-line"><tt class="py-comment"></tt> <tt class="py-keyword">continue</tt> </tt> <a name="L1218"></a><tt class="py-lineno">1218</tt> <tt class="py-line"> </tt> <a name="L1219"></a><tt class="py-lineno">1219</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> </tt> <a name="L1220"></a><tt class="py-lineno">1220</tt> <tt class="py-line"> </tt> <a name="L1221"></a><tt class="py-lineno">1221</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"#########################################################"</tt> </tt> <a name="L1222"></a><tt class="py-lineno">1222</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"# AlignIO Tests finished #"</tt> </tt> <a name="L1223"></a><tt class="py-lineno">1223</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"#########################################################"</tt> </tt> <a name="L1224"></a><tt class="py-lineno">1224</tt> <tt class="py-line"> </tt><script type="text/javascript"> <!-- expandto(location.href); // --> </script> </pre> <br /> <!-- ==================== NAVIGATION BAR ==================== --> <table class="navbar" border="0" width="100%" cellpadding="0" bgcolor="#a0c0ff" cellspacing="0"> <tr valign="middle"> <!-- Tree link --> <th> <a href="module-tree.html">Trees</a> </th> <!-- Index link --> <th> <a href="identifier-index.html">Indices</a> </th> <!-- Help link --> <th> <a href="help.html">Help</a> </th> <th class="navbar" width="100%"></th> </tr> </table> <table border="0" cellpadding="0" cellspacing="0" width="100%%"> <tr> <td align="left" class="footer"> Generated by Epydoc 3.0.1 on Mon Sep 15 09:26:43 2008 </td> <td align="right" class="footer"> <a target="mainFrame" href="http://epydoc.sourceforge.net" >http://epydoc.sourceforge.net</a> </td> </tr> </table> <script type="text/javascript"> <!-- // Private objects are initially displayed (because if // javascript is turned off then we want them to be // visible); but by default, we want to hide them. So hide // them unless we have a cookie that says to show them. checkCookie(); // --> </script> </body> </html>