Документ взят из кэша поисковой машины. Адрес оригинального документа : http://kodomo.fbb.msu.ru/hg/allpy/rev/b6c1eaad5ac6
Дата изменения: Unknown
Дата индексирования: Mon Oct 1 23:56:04 2012
Кодировка:
allpy: b6c1eaad5ac6

allpy

changeset 347:b6c1eaad5ac6

base: introduced Sequence.from_monomers instead of Sequence() (rels #12)
author Daniil Alexeyevsky <me.dendik@gmail.com>
date Thu, 20 Jan 2011 22:06:57 +0300
parents 7880ea44e56b
children b5b7fcc6c9cb
files allpy/base.py
diffstat 1 files changed, 15 insertions(+), 14 deletions(-) [+]
line diff
     1.1 --- a/allpy/base.py	Thu Jan 20 22:01:41 2011 +0300
     1.2 +++ b/allpy/base.py	Thu Jan 20 22:06:57 2011 +0300
     1.3 @@ -104,16 +104,24 @@
     1.4      description = ''
     1.5      source = ''
     1.6  
     1.7 -    def __init__(self, sequence=[], name=None, description=None, source=None):
     1.8 -        list.__init__(self, sequence)
     1.9 -        if hasattr(sequence, 'name'):
    1.10 -            vars(self).update(vars(sequence))
    1.11 +    @classmethod
    1.12 +    def from_monomers(cls, monomers=[], name=None, description=None, source=None):
    1.13 +        """Create sequence from a list of monomer objecst."""
    1.14 +        result = cls()
    1.15          if name:
    1.16 -            self.name = name
    1.17 +            result.name = name
    1.18          if description:
    1.19 -            self.description = description
    1.20 +            result.description = description
    1.21          if source:
    1.22 -            self.source = source
    1.23 +            result.source = source
    1.24 +        return result
    1.25 +
    1.26 +    @classmethod
    1.27 +    def from_string(cls, string, name='', description='', source=''):
    1.28 +        """Create sequences from string of one-letter codes."""
    1.29 +        monomer = cls.monomer_type.from_code1
    1.30 +        monomers = [monomer(letter) for letter in string]
    1.31 +        return cls.from_monomers(monomers, name, description, source)
    1.32  
    1.33      def __repr__(self):
    1.34          return '<Sequence %s>' % str(self)
    1.35 @@ -127,13 +135,6 @@
    1.36          return id(self)
    1.37  
    1.38      @classmethod
    1.39 -    def from_string(cls, string, name='', description='', source=''):
    1.40 -        """Create sequences from string of one-letter codes."""
    1.41 -        monomer = cls.monomer_type.from_code1
    1.42 -        monomers = [monomer(letter) for letter in string]
    1.43 -        return cls(monomers, name, description, source)
    1.44 -
    1.45 -    @classmethod
    1.46      def from_fasta(cls, file):
    1.47          """Read sequence from FASTA file.
    1.48