源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

Python中for循环控制语句用法实例

  • 时间:2022-07-15 07:27 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:Python中for循环控制语句用法实例
本文实例讲述了Python中for循环控制语句用法。分享给大家供大家参考。具体分析如下: 第一个:求 50 - 100 之间的质数
import math
for i in range(50, 100 + 1):
  for j in range(2, int(math.sqrt(i)) + 1):
    if i % j == 0:
      break
  else:
    print i
输出如下:
53
59
61
67
71
73
79
83
89
97
第二个:把else的位置与if处于同一缩进。
import math
for i in range(50, 100 + 1):
  for j in range(2, int(math.sqrt(i)) + 1):
    if i % j == 0:
      break
    else:
      print i
第三个:在else后加一个break语句。
import math
for i in range(50, 100 + 1):
  for j in range(2, int(math.sqrt(i)) + 1):
    if i % j == 0:
      break
    else:
      print i
      break

[b]说明:[/b] for语句是python中的循环控制语句。可用来遍历某一对象,还具有一个附带的可选的else块,主要用于处理for语句中包含的break语句。 如果for循环未被break终止,则执行else块中的语句。 break 在需要时终止for循环 continue 跳过位于其后的语句,开始下一轮循环。 for语句的格式如下: >>>for <> in <对象集合>: ...    if <条件>: ...        break ...    if <条件>: ...        continue ...    <其他语句> ...else: ...    <> ...   [b]关于第一个程序[/b] 在这里,我解释一下为何导入math模块:导入math模块就是为了开方。 如果导入了math模块,然后对 i 进行开方,可以减少运算次数。 求一个数是否质数。只需对它进行这样的运算:     将这个数n,循环与 2 到 这个n的开平方 进行相除 如果这个区间内的所有整数不能整除n,则n为质数。 这样,就节省了运算 ‘大于n的开平方 小于n' 之间这段运算的时间。 第二,我解释一下那‘+1': int(math.sqrt(i)) 输出的是比 i的开平方 小 的最大整数。 比如说:math.sqrt(51) 结果比7大一点,而 int(math.sqrt(51)) 输出的是7 而且在range(m, n)这里,range()函数产生的是一个从 m至n-1的整数列表,因而需要‘+1',使运算完整。 顺便提一下range()函数。 range([start,] stop [, step]) # start  可选参数,起始数 #stop   终止数,如果 range 只有一个参数x,则产生一个包含 0 至 x-1 的整数列表 #step   可选参数,步长   [b]第二个程序[/b] else那行不对,如果else放在那个地方的话,一旦有某个数遇到不能整除自己的数,就会输出i,直道找到一个整除自己等于0的数。那样就会连续输出这个数。 例如:i = 77,他不是质数,但是也会连续输出5次77,懂不?   只不过,只是自己不明白当else与if位于同一缩进的话,它是怎样运行的。 你解释得很详细,用‘茅塞顿开'来形容一点都不过分。 而且,我必觉得画图是理解循环一个非常好的办法。 [img]http://files.jb51.net/file_images/article/201506/201562100238224.png?20155210257[/img] 希望本文所述对大家的Python程序设计有所帮助。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部