Renvoi de subs liste

Bonjour,

Je n'ai pas réellement d'idée pour faire cela. L'exercice est le suivant:
  • utiliser une boucle for
  • reçoit une liste de longueur quelconque
  • renvoie une liste de listes, contenant toutes les sous-listes comme suit :


    subs([5,2,3,4]) -> [
[5,2,3,4],
[2,3,4],
[3,4],
[4],
]

Je sais que
slice
peut bien marcher.
Je travaille en python 2.7.

2 réponses

  • Votes
  • Date
  • Date décroissante
  1. Contributeur
    bonjour,
    quelle partie te pose-t-elle problème?

    fais d'abord des exercices plus simples:
    - imprimer les sous-listes
    - à partir d'un nombre naturel, créer une liste de tous les naturels inférieur au nombre de départ
    1. Modérateur
      Bonjour,

      En python (2 ou 3), tu peux récupérer la sous liste d'une liste l allant de l'index
      i
      (inclu) à l'index
      j
      (exclu) avec la syntaxe
      l[i:j]
      (opérateur de slicing).
      • Si
        i
        est omis (ou vaut
        0
        ), on part implicitement du début de la liste.
      • Si
        j
        est omis (ou vaut
        None
        ), on va implicitement jusqu'à la fin de la liste.


      Demande-toi dans ton exercice comment
      i
      et
      j
      évoluent, et déduis en comme écrire ta boucle
      for
      . Il suffira alors de déclarer une liste vite, et dans cette boucle
      for
      d'alimenter progressivement ta liste.

      Bonne chance