巴黎隐士 发表于 2022-2-17 15:50:31




"""

0.
一般的函数结束于return语句、异常或者所有函数语句执行完毕(隐式return None)。

1.
协同程序就是可以运行的独立函数调用,函数可以暂停或者挂起,并在需要的时候从程序离开的地方
继续或者重新开始。

2.
不是。

3.
把return语句改为yield语句。

4.
用来生成一个值的序列。

5.
while True可以让生成器不断生成数值,否则的话生成一次就结束了。



#0.

def myRev(arg):

    for each in arg[::-1]:
      yield each

for i in myRev("FishC"):
    print(i, end="")

"""


#1.
import math

def isPrime(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
                break
      else:
            return True
    else:
      return False

def getPrime(number):
   
    i = 1
    while i <= number:

      if isPrime(i):
            yield i
      i += 1

print(sum(getPrime(2000000)))

result = 14291382922

   
               

   













   

   

一切都为编程 发表于 2022-4-15 19:45:33

学习

yu玉米啊 发表于 2022-7-21 15:24:55

{:10_249:}{:10_249:}

phxx 发表于 2022-8-12 23:14:04

搜嘎

Vicissitude357 发表于 2022-9-3 12:03:16

send不理解

yjf005 发表于 2022-10-22 12:35:08

看完了,写的不错!学到了很多

极客.py 发表于 2023-2-22 16:09:42

还要继续加油学习
页: 1 2 3 4 5 6 7 [8]
查看完整版本: 提高你的 Python:解释 yield 和 Generators(生成器)