Maison  >  Article  >  développement back-end  >  Python utilise un itérateur pour capturer la valeur de retour d'un générateur

Python utilise un itérateur pour capturer la valeur de retour d'un générateur

不言
不言original
2018-06-02 15:42:341449parcourir

Cet article présente principalement la méthode Python utilisant des itérateurs pour capturer la valeur de retour du générateur.Il analyse les compétences opérationnelles associées de l'itérateur Python pour obtenir la valeur de retour du générateur sur la base d'exemples spécifiques.Les amis dans le besoin peuvent s'y référer<.>

L'exemple de cet article décrit comment Python utilise les itérateurs pour capturer la valeur de retour du générateur. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :

Lors de l'appel du générateur à l'aide d'une boucle for, j'ai constaté que la valeur de retour de l'instruction return du générateur ne pouvait pas être obtenue. Si vous souhaitez obtenir la valeur de retour, vous devez capturer l'erreur StopIteration. La valeur de retour est incluse dans la valeur de StopIteration :

#!/usr/bin/env python
# -*- coding: utf-8 -*-
def fib(max):
  n, a, b = 0, 0, 1
  while n < max:
    yield b
    a, b = b, a + b
    n = n + 1
  return &#39;done&#39;
# 捕获Generator的返回值
g = fib(6)
while True:
  try:
    x=next(g)
    print(&#39;g=&#39;,x)
  except StopIteration as e:
    print(&#39;Generrator return value:&#39;, e.value)
    break

Sortie :

g= 1
g= 1
g= 2
g= 3
g= 5
g= 8
Generrator return value: done

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn