Home >Backend Development >Python Tutorial >Python uses an iterator to capture the return value of a Generator

Python uses an iterator to capture the return value of a Generator

不言
不言Original
2018-06-02 15:42:341504browse

This article mainly introduces the method of Python using iterators to capture the return value of Generator. It analyzes the related operation skills of Python iterator to obtain the return value of Generator based on specific examples. Friends in need can refer to it

The example in this article describes how Python uses iterators to capture the return value of Generator. Share it with everyone for your reference, the details are as follows:

When calling the generator using a for loop, I found that the return value of the generator's return statement cannot be obtained. If you want to get the return value, you must capture the StopIteration error. The return value is included in the value of 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

Output:

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

The above is the detailed content of Python uses an iterator to capture the return value of a Generator. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn