Heim  >  Artikel  >  Backend-Entwicklung  >  Python verwendet einen Iterator, um den Rückgabewert eines Generators zu erfassen

Python verwendet einen Iterator, um den Rückgabewert eines Generators zu erfassen

不言
不言Original
2018-06-02 15:42:341497Durchsuche

In diesem Artikel wird hauptsächlich die Methode von Python vorgestellt, mit der Iteratoren den Rückgabewert des Generators erfassen. Er analysiert die zugehörigen Betriebsfähigkeiten des Python-Iterators, um den Rückgabewert des Generators anhand spezifischer Beispiele zu erhalten

Das Beispiel in diesem Artikel beschreibt, wie Python Iteratoren verwendet, um den Rückgabewert von Generator zu erfassen. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:

Als ich den Generator mit einer for-Schleife aufrief, stellte ich fest, dass der Rückgabewert der Return-Anweisung des Generators nicht abgerufen werden konnte. Wenn Sie den Rückgabewert erhalten möchten, müssen Sie den StopIteration-Fehler erfassen. Der Rückgabewert ist im Wert von StopIteration enthalten:

#!/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

Ausgabe:

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

Das obige ist der detaillierte Inhalt vonPython verwendet einen Iterator, um den Rückgabewert eines Generators zu erfassen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn