wolong 发表于 2018-8-15 06:19:00

python-yield详解

In : def simple_generator_function():  
   ...:   yield 1
  
   ...:   yield 2
  
   ...:   yield 3
  
   ...:
  
这里有两个简单的方法来使用它:
  
In : for value in simple_generator_function():
  
   ...:   print(value)
  
   ...:
  
1
  
2
  
3
  
In : our_generator = simple_generator_function()
  
In : next(our_generator)
  
Out: 1
  
In : next(our_generator)
  
Out: 2
  
In : next(our_generator)
  
Out: 3
  

  

  
In : def is_prime(number):
  
   ...:   if number > 1:
  
   ...:         if number == 2:
  
   ...:             return True
  
   ...:         if number % 2 == 0:
  
   ...:             return False
  
   ...:         for current in range(3, int(math.sqrt(number) + 1), 2):
  
   ...:             if number % current == 0:
  
   ...:               return False
  
   ...:         return True
  
   ...:   return False
  
   ...:
  
In : def get_primes(number):
  
   ...:   while True:
  
   ...:         if is_prime(number):
  
   ...:             yield number
  
   ...:         number += 1
  
   ...:
页: [1]
查看完整版本: python-yield详解