| n | no_param = object() | n | _EMPTY = object() |
| | | |
| class Sequence: | | class Sequence: |
| | | |
| n | def __init__(self, obj=no_param): | n | def __init__(self, sequence=_EMPTY): |
| if obj == no_param: | | if sequence is _EMPTY: |
| self._sequence = [] | | self._sequence = [] |
| n | elif hasattr(obj, '__getitem__'): | n | elif hasattr(sequence, '__getitem__'): |
| self._sequence = obj | | self._sequence = sequence |
| else: | | else: |
| n | self._sequence = [obj] | n | self._sequence = [sequence] |
| | | |
| @property | | @property |
| def sequence(self): | | def sequence(self): |
| return self._sequence | | return self._sequence |
| | | |
| @sequence.setter | | @sequence.setter |
| n | def sequence(self, other): | n | def sequence(self, sequence): |
| if hasattr(other, '__getitem__'): | | if hasattr(sequence, '__getitem__'): |
| self._sequence = other | | self._sequence = sequence |
| else: | | else: |
| n | self._sequence = [other] | n | self._sequence = [sequence] |
| | | |
| @sequence.deleter | | @sequence.deleter |
| def sequence(self): | | def sequence(self): |
| t | cls = type(self._sequence) | t | current_class = type(self._sequence) |
| self._sequence = cls() | | self._sequence = current_class() |