@JSent

Как правильно передавать список в функцию Python?

Написал функцию для составления всех размещений без повторений.
def combinator(setOfNum,length,deep=-1,arrayOfComb=[],num=[]):
	if deep == -1 : deep = length
	if deep == 0:
		arrayOfComb.append(copy.copy(num))
		return
	for i in range(setOfNum):
		if num.count(i) == 0: num.append(i)
		else: continue
		combinator(setOfNum,length,deep-1)
		del num[-1]
	if deep == length:
		return copy.copy(arrayOfComb)


Проблема в том, что при каждом вызове функции, новый результат добавляется к старому. Удаление перед return не помогает. Мне кажется, что списки нужно передавать по другому.
  • Вопрос задан
  • 158 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы
Popmechanic Москва
от 100 000 до 150 000 руб.
Panda Media Нижний Новгород
от 70 000 руб.
НЛ Континент Новосибирск
от 60 000 до 100 000 руб.
20 авг. 2018, в 21:21
30000 руб./за проект
20 авг. 2018, в 20:46
5000 руб./за проект