>>> print range.__doc__
range([start,] stop[, step]) -> list of integers
Возвращает список, содержащий арифметическую последовательность целых чисел.
range (i, j) возвращает [i, i + 1, i + 2, ..., j-1]; начало (!) по умолчанию равно 0.
Когда задан шаг, он определяет приращение (или уменьшение).
Например, range (4) возвращает [0, 1, 2, 3]. Конечная точка опущена!
Это в точности действительные индексы для списка из 4 элементов.
>>> range(33,44)
[33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43]
>>> range(1,3)
[1, 2]
Полагаю, вы могли бы повторить свой список и соответствующим образом указать диапазон вызовов.
>>> def lessThan(n) :
... return range(n+1)
...
>>> lessThan(4)
[0, 1, 2, 3, 4]
>>> def toFrom(n,m):
... return range(n,m)
...
>>> toFrom(33,44)
[33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43]
Затем разбейте строку на запятые и для каждого бита проанализируйте его достаточно, чтобы выяснить, какую функцию вызывать, объединяя возвращаемые списки.
Что-нибудь еще, и я бы написал это для вас.