h = 0 leap = 1 from math import sqrt from sys import stdout # 个人认为这句可要可不要,影射到脚本窗口没有用上 # print(int(sqrt(15))) for m in range(101,201): k = int(sqrt(m + 1)) # 平方根后取整数 for i in range(2,k + 1): # 这里是数学尚识,K的值是平方根开根后的值,因为不被任何数整除的数是素数,开根后得到的数让m整除,可以最大限度的减少运算 if m % i == 0: leap = 0 # 如果m被i整除,则leap的值取0,也就是说不被整除,就取值1 break if leap == 1: print ('%-4d' % m) # 即如果leap的值不被整除,就取值1,也就是说m的数一是素数了 h += 1 # 每得一个素数,统计一次 if h % 10 == 0: # 这里是每10个数换一行 print ('') # 这里是每10个数换一行 leap = 1 # 这里有重新赋值作用,即还原leap的初始值 print ('The total is %d' % h) # 由统计的数打印出来