OVH Cloud OVH Cloud

outside function (yield)

3 réponses
Avatar
Almaleh
Bonjour,
J'utilise Python 2.4.3 sous win XP, et l'utilisation basique de yield
me retourne l'erreur "outside function".
Ca peut etre du à quoi ?

merci
Francois A.

--
Francois A.
_________

Excellent newsreader : http://www.mesnews.net

3 réponses

Avatar
Lior Gradstein
Cela signifie que tu n'as pas fait appel à yield dans une
fonction/méthode. yield te permet de "quitter" une fonction (comme un
return) mais à l'appel suivant de cette fonction, le code reprendra
là où il s'était arreté:

def toto():
... for i in range(10):



... yield i
...
list(toto())
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]





Almaleh wrote:
Bonjour,
J'utilise Python 2.4.3 sous win XP, et l'utilisation basique de yield
me retourne l'erreur "outside function".
Ca peut etre du à quoi ?

merci
Francois A.

--
Francois A.
_________

Excellent newsreader : http://www.mesnews.net




Avatar
Méta-MCI
Bonjour !

Montrer un peu de code aiderait à t'expliquer.

@+

Michel Claveau
Avatar
Almaleh
Merci de cette réponse courte mais précise ! J'ai compris
Francois


Cela signifie que tu n'as pas fait appel à yield dans une
fonction/méthode. yield te permet de "quitter" une fonction (comme un
return) mais à l'appel suivant de cette fonction, le code reprendra
là où il s'était arreté:

def toto():
... for i in range(10):



... yield i
...
list(toto())
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]







--
Francois A.
_________

Excellent newsreader : http://www.mesnews.net