Это довольно сложно объяснить, но голый со мной. Я пытаюсь вернуть список строк из функции Groups (s, k), где в основном список строк «k» элементов из строки 'k> = 0 и k < = len (s), и эти элементы в этих строках происходят в том же порядке, что и «s», как показано нижевозвращает список строк в рекурсивной функции python
Группы («abcde», 2) → ["ab", "ac", "ad", "ae", "bc" , "шд", "быть", "CD", "се," де "]
Группы (" ABCDE», 5) → [ "ABCDE"]
группы ("ABCDE", 1) → [ «a», «b», «c», «d», «e»]
Мне очень жаль мою формулировку вопроса, поскольку это трудно понять, но вот что я до сих пор:
def Groups(s,k):
if k == 0 or k > len(s):
return [""]
return [ i*k for i in s if k ==1]
if k > 1 and k <= 5:
return[ x for y in s y for x in s]
я бы очень признателен за любую помощь :)
Почему "рекурсия" тег? Здесь нет рекурсии. По какой-то причине вам нужно рекурсивное решение? 'itertools.combinations' делает именно то, что вы хотите. – saulspatz