Python - [AYUDA] Tarea de Universidad

 
Vista:

[AYUDA] Tarea de Universidad

Publicado por Ignacio Olave (1 intervención) el 24/05/2016 01:31:09
Tengo la función Function(Number) con Number un String, que lo que debería hacer, es devolver todas las listas que se puedan generar a partir de Number sin alterar el orden y usando todos los elementos.

Aquí dejo un ejemplo de lo que debería pasar:

Function('1234')
(*)[1,234]
(*)[1,2,34]
(*)[1,2,3,4]
(*)[12,3,4]
(*)[123,4]
(*)[1234]
(#)[12,34]
(#)[1,23,4]


(*) Son las listas que he logrado retornar y (#) son las listas que no he podido retornar. Si alguien pudiera ayudarme a pensar en (#) lo agradecería un montón.

Si a alguien le sirve, le dejo lo que plantié para (*):

def function(number):
lists = [ ]
aux = [ ]
part1(number,lists,aux)
large = len(lists)
last = large - 1
part2(list(lists[last]),lists)
return lists

def part1(number,lists,aux):
large = len(number)
if large >= 2:
lista = [ ]
aux.append(number[0])
fixed = number[1:]
for i in aux:
lista.append(i)
lista.append(fixed)
lists.append(lista)
part1(fixed,lists,aux)

def part2(lista,lists):
large = len(lista)
if large >= 2:
lista[0] += str(lista[1])
lists.append(lista)
lista.pop(1)
part2(list(lista),lists)
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder