Форум сайта python.su
Всем привет. Решаю одну задачу, для этого нужно разложить число на слагаемые. Нашёл такую функцию:
def part(n, k): def _part(n, k, pre): if n <= 0: return [] if k == 1: print pre # Тут у переменной уже есть значение - '1' if n <= pre: # Её сравнивают с n return [[n]] # И возвращают n return [] ret = [] for i in range(min(pre, n), 0, -1): ret += [[i] + sub for sub in _part(n-i, k-1, i)] print(ret) return ret return _part(n, k, n)
Офлайн
Это только объявление функции:
def _part(n, k, pre): ...
return _part(n, k, n)
Офлайн
Вот блин, сразу не дошло) спасибо!
Офлайн
kciosdseКстати, если брать терминологию для С++, например отсюда, то там написано:
функция(или метод.. не знаю как назвать)
В соответствии со стандартной терминологией ООП функции –
компоненты класса или компонентные функции можно называть методами.
Отредактировано alexbadaloff (Янв. 23, 2015 10:12:25)
Офлайн