Formation I.S.N.

Présence et poupées russes

Exercice : présence d'un entier dans des listes imbriquées

On dispose d'une liste contenant des entiers ou des listes d'entiers, ou des listes de listes d'entiers ou des listes de listes de listes d'entiers ou ...

Par exemple : L = [3, [2,3,[4,5,6], [2,[3,5]] ] , 8, [[[[ 4, [1] ]]]], 15 ].

Écrire une fonction python récursive :

Entrée Une liste matriochka L et un entier x.
Sortie False si x n'est pas dans L, True sinon.
  • un code python

Une solution Python :


def estPresent(L, x) :
	if L == [] : return False
	if not(isinstance(L, list)) : return L == x
	else :
		return estPresent(L[0], x) or estPresent(L[1:], x)
		




L = [2,3,4,[2,5, [14,7], 8], [2,[[[55]]]], []  ]
print( estPresent(L, 55) )
print( estPresent(L, 7) )
print( estPresent(L, 3) )
print( estPresent(L, 500) )