Документ взят из кэша поисковой машины. Адрес оригинального документа : http://kodomo.fbb.msu.ru/hg/allpy/raw-rev/b6c1eaad5ac6
Дата изменения: Unknown
Дата индексирования: Tue Oct 2 07:19:03 2012
Кодировка:

# HG changeset patch
# User Daniil Alexeyevsky
# Date 1295550417 -10800
# Node ID b6c1eaad5ac637115e589503b125db96b1d3f9c2
# Parent 7880ea44e56b40284262132249046119012264dc
base: introduced Sequence.from_monomers instead of Sequence() (rels #12)

diff -r 7880ea44e56b -r b6c1eaad5ac6 allpy/base.py
--- a/allpy/base.py Thu Jan 20 22:01:41 2011 +0300
+++ b/allpy/base.py Thu Jan 20 22:06:57 2011 +0300
@@ -104,16 +104,24 @@
description = ''
source = ''

- def __init__(self, sequence=[], name=None, description=None, source=None):
- list.__init__(self, sequence)
- if hasattr(sequence, 'name'):
- vars(self).update(vars(sequence))
+ @classmethod
+ def from_monomers(cls, monomers=[], name=None, description=None, source=None):
+ """Create sequence from a list of monomer objecst."""
+ result = cls()
if name:
- self.name = name
+ result.name = name
if description:
- self.description = description
+ result.description = description
if source:
- self.source = source
+ result.source = source
+ return result
+
+ @classmethod
+ def from_string(cls, string, name='', description='', source=''):
+ """Create sequences from string of one-letter codes."""
+ monomer = cls.monomer_type.from_code1
+ monomers = [monomer(letter) for letter in string]
+ return cls.from_monomers(monomers, name, description, source)

def __repr__(self):
return '' % str(self)
@@ -127,13 +135,6 @@
return id(self)

@classmethod
- def from_string(cls, string, name='', description='', source=''):
- """Create sequences from string of one-letter codes."""
- monomer = cls.monomer_type.from_code1
- monomers = [monomer(letter) for letter in string]
- return cls(monomers, name, description, source)
-
- @classmethod
def from_fasta(cls, file):
"""Read sequence from FASTA file.