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

# HG changeset patch
# User Daniil Alexeyevsky
# Date 1310063234 -14400
# Node ID 4e0312f00a6cc4294bb91016f941c9af526a9621
# Parent 8b03bd2f919a43dee3e69ef641ee23eb0e1f622f
Renamed Markup.as_list() to Markup.sorted_values() and added Markup.sorted_keys()

diff -r 8b03bd2f919a -r 4e0312f00a6c allpy/base.py
--- a/allpy/base.py Thu Jul 07 19:32:44 2011 +0400
+++ b/allpy/base.py Thu Jul 07 22:27:14 2011 +0400
@@ -511,12 +511,19 @@
self._register(sequence, name)
self.refresh()

- def as_list(self):
- for monomer in self.sequence:
- yield self[monomer]
+ def sorted_keys(self):
+ return self.sequence
+
+ def sorted_values(self):
+ return (self[monomer] for monomer in self.sequence)
+
+ def get(self, key, value=None):
+ if key not in self:
+ return value
+ return self[key]

def __contains__(self, monomer):
- return monomer in self.sequence
+ return hasattr(monomer, self.name)

def __getitem__(self, monomer):
return getattr(monomer, self.name)
@@ -531,8 +538,10 @@
self._register(alignment, name)
self.refresh()

- def as_list(self):
- for column in self.alignment.columns:
- yield self[column]
+ def sorted_keys(self):
+ return self.alignment.columns
+
+ def sorted_values(self):
+ return (self[column] for column in self.alignment.columns)

# vim: set ts=4 sts=4 sw=4 et:
diff -r 8b03bd2f919a -r 4e0312f00a6c test/test_markups.py
--- a/test/test_markups.py Thu Jul 07 19:32:44 2011 +0400
+++ b/test/test_markups.py Thu Jul 07 22:27:14 2011 +0400
@@ -17,7 +17,7 @@
def test_case():
seq = protein.Sequence.from_string('seQVEncE', name='sequence')
markups.SequenceCaseMarkup(seq)
- letters = ''.join(v[0] for v in seq.markups['case'].as_list())
+ letters = ''.join(v[0] for v in seq.markups['case'].sorted_values())
assert letters == 'lluuullu'

def test_manual():