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自定义主从分布式架构实例分析
Sep 19 Python
使用Python对Access读写操作
Mar 30 Python
Python使用正则表达式抓取网页图片的方法示例
Apr 21 Python
Python 装饰器实现DRY(不重复代码)原则
Mar 05 Python
使用python绘制二元函数图像的实例
Feb 12 Python
django多种支付、并发订单处理实例代码
Dec 13 Python
python中的逆序遍历实例
Dec 25 Python
设置jupyter中DataFrame的显示限制方式
Apr 12 Python
Python爬虫回测股票的实例讲解
Jan 22 Python
教你利用python实现企业微信发送消息
May 23 Python
Python使用openpyxl批量处理数据
Jun 23 Python
Python 中的Sympy详细使用
Aug 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
复杂检索数据并分页显示的处理方法
2006/10/09 PHP
如何离线执行php任务
2017/02/21 PHP
PHP设计模式之状态模式定义与用法详解
2018/04/02 PHP
event.X和event.clientX的区别分析
2011/10/06 Javascript
javascript学习笔记(七) js函数介绍
2012/06/19 Javascript
解析JavaScript中delete操作符不能删除的对象
2013/12/03 Javascript
javascript学习笔记之函数定义
2015/06/25 Javascript
js实现字符串和数组之间相互转换操作
2016/01/12 Javascript
基于BootstrapValidator的Form表单验证(24)
2016/12/12 Javascript
JS求解三元一次方程组值的方法
2017/01/03 Javascript
Nodejs 发送Post请求功能(发短信验证码例子)
2017/02/09 NodeJs
利用node.js实现自动生成前端项目组件的方法详解
2017/07/12 Javascript
详解webpack打包时排除其中一个css、js文件或单独打包一个css、js文件(两种方法)
2018/10/26 Javascript
解决vue跨域axios异步通信问题
2019/04/17 Javascript
js通过循环多张图片实现动画效果
2019/12/19 Javascript
python获取各操作系统硬件信息的方法
2015/06/03 Python
通过python实现弹窗广告拦截过程详解
2019/07/10 Python
python中bytes和str类型的区别
2019/10/21 Python
python 实现提取log文件中的关键句子,并进行统计分析
2019/12/24 Python
Django实现将views.py中的数据传递到前端html页面,并展示
2020/03/16 Python
详解Python 实现 ZeroMQ 的三种基本工作模式
2020/03/24 Python
浅谈keras中的keras.utils.to_categorical用法
2020/07/02 Python
python 解决Windows平台上路径有空格的问题
2020/11/10 Python
香港永安旅游网:Wing On Travel
2017/04/10 全球购物
罗兰·穆雷官网:Roland Mouret
2018/09/28 全球购物
公司培训心得体会
2014/01/03 职场文书
演讲稿开场白
2014/01/13 职场文书
秋季运动会活动方案
2014/02/05 职场文书
市场部业务员岗位职责
2014/04/02 职场文书
公司优秀员工获奖感言
2014/08/14 职场文书
医学检验专业自荐信
2014/09/18 职场文书
运动会表扬稿
2015/01/16 职场文书
货款欠条范本
2015/07/03 职场文书
谢师宴学生答谢词
2015/09/30 职场文书
JavaScript实现显示和隐藏图片
2021/04/29 Javascript
RestTemplate如何通过HTTP Basic Auth认证示例说明
2022/03/17 Java/Android