DeaD_EyE icon

sequence homework 2

DeaD_EyE | PRO | 04/09/18 02:27:38 PM UTC | 0 ⭐ | 893 👁️ | Never ⏰ | []
Python |

550 B

|

None

|

0 👍

/

0 👎

from contextlib import suppress
 
 
def adv_range(seq):
    for element in seq.split(','):
        with suppress(ValueError):
            if '-' in element:
                start, _, stop = element.partition('-')
                start, stop = int(start), int(stop)
                direction = 1 if start <= stop else -1
                yield from range(start, stop + direction, direction)
            else:
                yield int(element)
 
 
def safe_adv_range(seq, constructor=set):
    retval = constructor(adv_range(seq))
    return sorted(retval)

Comments

  •  icon
    01/01/70 12:00:00 AM UTC
    Plain Text |

    0 B

    |

    👍

    /

    👎