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


Posted in Python onJune 02, 2015

本文实例讲述了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

说明:

for语句是python中的循环控制语句。可用来遍历某一对象,还具有一个附带的可选的else块,主要用于处理for语句中包含的break语句。
如果for循环未被break终止,则执行else块中的语句。
break 在需要时终止for循环
continue 跳过位于其后的语句,开始下一轮循环。

for语句的格式如下:
>>>for <> in <对象集合>:
...    if <条件>:
...        break
...    if <条件>:
...        continue
...    <其他语句>
...else:
...    <>
...
 
关于第一个程序

在这里,我解释一下为何导入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   可选参数,步长
 
第二个程序

else那行不对,如果else放在那个地方的话,一旦有某个数遇到不能整除自己的数,就会输出i,直道找到一个整除自己等于0的数。那样就会连续输出这个数。
例如:i = 77,他不是质数,但是也会连续输出5次77,懂不?
 
只不过,只是自己不明白当else与if位于同一缩进的话,它是怎样运行的。
你解释得很详细,用‘茅塞顿开'来形容一点都不过分。
而且,我必觉得画图是理解循环一个非常好的办法。

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

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
python条件和循环的使用方法
Nov 01 Python
python使用post提交数据到远程url的方法
Apr 29 Python
python简单读取大文件的方法
Jul 01 Python
详解Python装饰器由浅入深
Dec 09 Python
开源软件包和环境管理系统Anaconda的安装使用
Sep 04 Python
python实现扫描ip地址的小程序
Apr 16 Python
python2与python3爬虫中get与post对比解析
Sep 18 Python
Python 过滤错误log并导出的实例
Dec 26 Python
Python3 全自动更新已安装的模块实现
Jan 06 Python
使用Python开发个京东上抢口罩的小实例(仅作技术研究学习使用)
Mar 10 Python
Python 实现打印单词的菱形字符图案
Apr 12 Python
python中@contextmanager实例用法
Feb 07 Python
python获取目录下所有文件的方法
Jun 01 #Python
Python常用小技巧总结
Jun 01 #Python
Python获取运行目录与当前脚本目录的方法
Jun 01 #Python
Python运算符重载用法实例分析
Jun 01 #Python
python使用Image处理图片常用技巧分析
Jun 01 #Python
python实现图片变亮或者变暗的方法
Jun 01 #Python
wxPython中listbox用法实例详解
Jun 01 #Python
You might like
基于mysql的论坛(1)
2006/10/09 PHP
PHP_MySQL教程-第一天
2007/03/18 PHP
php2html php生成静态页函数
2008/12/08 PHP
PHP 动态随机生成验证码类代码
2010/04/09 PHP
兼容性最强的PHP生成缩略图的函数代码(修改版)
2011/01/18 PHP
ThinkPHP中的系统常量和预定义常量集合
2014/07/01 PHP
Thinkphp结合AJAX长轮询实现PC与APP推送详解
2017/07/31 PHP
彻底搞懂PHP 变量结构体
2017/10/11 PHP
关于Yii2框架跑脚本时内存泄漏问题的分析与解决
2019/12/01 PHP
JavaScript 事件记录使用说明
2009/10/20 Javascript
JQuery实现简单验证码提示解决方案
2012/12/20 Javascript
向左滚动文字 js代码效果
2013/08/17 Javascript
JavaScript数组对象赋值用法实例
2015/08/04 Javascript
jQuery实现点击小图片淡入淡出显示大图片特效
2015/09/09 Javascript
javascript+HTML5自定义元素播放焦点图动画
2016/02/21 Javascript
JavaScript知识点总结(五)之Javascript中两个等于号(==)和三个等于号(===)的区别
2016/05/31 Javascript
基于JS实现导航条之调用网页助手小精灵的方法
2016/06/17 Javascript
node.js中debug模块的简单介绍与使用
2017/04/25 Javascript
vue 动态修改a标签的样式的方法
2018/01/18 Javascript
微信小程序如何调用图片接口API并居中显示
2019/06/29 Javascript
Vue动态面包屑功能的实现方法
2019/07/01 Javascript
JS实现transform实现扇子效果
2020/01/17 Javascript
详解Django框架中的视图级缓存
2015/07/23 Python
python中requests使用代理proxies方法介绍
2017/10/25 Python
django加载本地html的方法
2018/05/27 Python
python爬取酷狗音乐排行榜
2019/02/20 Python
wxpython+pymysql实现用户登陆功能
2019/11/19 Python
SheIn俄罗斯:时尚女装网上商店
2017/02/28 全球购物
lululemon美国官网:瑜伽服+跑步装备
2018/11/16 全球购物
Fox Racing官方网站:越野摩托车和山地自行车装备和服装
2019/12/23 全球购物
中专毕业个人的自荐信格式
2013/09/21 职场文书
开业庆典邀请函
2014/01/08 职场文书
双十佳事迹材料
2014/01/29 职场文书
治庸问责心得体会
2014/09/12 职场文书
个人四风问题整改措施
2014/10/24 职场文书
Python使用海龟绘图实现贪吃蛇游戏
2021/06/18 Python