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 相关文章推荐
ssh批量登录并执行命令的python实现代码
May 25 Python
Python基于回溯法子集树模板实现图的遍历功能示例
Sep 05 Python
Python解决N阶台阶走法问题的方法分析
Dec 28 Python
Python实现简易过滤删除数字的方法小结
Jan 09 Python
Python 实现毫秒级淘宝抢购脚本的示例代码
Sep 16 Python
Python3.7基于hashlib和Crypto实现加签验签功能(实例代码)
Dec 04 Python
Python中join()函数多种操作代码实例
Jan 13 Python
pytorch中图像的数据格式实例
Feb 11 Python
python中查看.db文件中表格的名字及表格中的字段操作
Jul 07 Python
Python 实现将某一列设置为str类型
Jul 14 Python
Django DRF认证组件流程实现原理详解
Aug 17 Python
python修改微信和支付宝步数的示例代码
Oct 12 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
长波有什么东西
2021/03/01 无线电
随时给自己贴的图片加文字的php代码
2007/03/08 PHP
jQuery 源码分析笔记
2011/05/25 PHP
解析如何通过PHP函数获取当前运行的环境 来进行判断执行逻辑(小技巧)
2013/06/25 PHP
PHP实现数据分页显示的简单实例
2016/05/26 PHP
利用Homestead快速运行一个Laravel项目的方法详解
2017/11/14 PHP
php多进程应用场景实例详解
2019/07/22 PHP
Alliance vs Liquid BO3 第二场2.13
2021/03/10 DOTA
编程语言JavaScript简介
2014/10/16 Javascript
JavaScript中用getDate()方法返回指定日期的教程
2015/06/09 Javascript
理解JavaScript表单的基础知识
2016/01/25 Javascript
jquery实现页面常用的返回顶部效果
2016/03/04 Javascript
jq实现左滑显示删除按钮,点击删除实现删除数据功能(推荐)
2016/08/23 Javascript
基于AngularJS前端云组件最佳实践
2016/10/20 Javascript
jQuery实现的简单无刷新评论功能示例
2017/11/08 jQuery
vue裁切预览组件功能的实现步骤
2018/05/04 Javascript
vue+iview+less 实现换肤功能
2018/08/17 Javascript
详解可以用在VS Code中的正则表达式小技巧
2019/05/14 Javascript
js实现简单的轮播图效果
2020/12/13 Javascript
编程语言Python的发展史
2014/09/26 Python
Python简单删除目录下文件以及文件夹的方法
2015/05/27 Python
Python中的正则表达式与JSON数据交换格式
2019/07/03 Python
如何利用Python开发一个简单的猜数字游戏
2019/09/22 Python
基于Python下载网络图片方法汇总代码实例
2020/06/24 Python
PyQt5的QWebEngineView使用示例
2020/10/20 Python
解决Pycharm 运行后没有输出的问题
2021/02/05 Python
产品工艺师的岗位职责
2013/11/15 职场文书
初中科学教学反思
2014/01/21 职场文书
部队万能检讨书
2014/02/20 职场文书
幼儿园小班评语
2014/04/18 职场文书
大学生个人年度总结范文
2015/02/15 职场文书
致三级跳运动员加油稿
2015/07/21 职场文书
2016大学生诚信考试承诺书
2016/03/25 职场文书
详解Mysql 函数调用优化
2021/04/07 MySQL
python实现自定义日志的具体方法
2021/05/28 Python
python实现一个简单的贪吃蛇游戏附代码
2022/06/28 Python