Python2与python3中 for 循环语句基础与实例分析


Posted in Python onNovember 20, 2017

下面的代码中python2与python3的print使用区别,大家注意一下。python3需要加()才行。

语法:

for循环的语法格式如下:

for iterating_var in sequence:
  statements(s)

流程图:

Python2与python3中 for 循环语句基础与实例分析

实例:

#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
for letter in '3water.com':   # 第一个实例
  print '当前字母 :', letter
 
fruits = ['banana', 'apple', 'mango','orange']
for fruit in fruits:    # 第二个实例
  print '当前水果 :', fruit
 
print "Good bye!"

以上实例输出结果:

当前字母 : j
当前字母 : b
当前字母 : 5
当前字母 : 1
当前字母 : .
当前字母 : n
当前字母 : e
当前字母 : t
当前水果 : banana
当前水果 : apple
当前水果 : mango
当前水果 : orange
Good bye!

通过序列索引迭代

另外一种执行循环的遍历方式是通过索引,如下实例:

#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
fruits = ['banana', 'apple', 'mango']
for index in range(len(fruits)):
  print '当前水果 :', fruits[index]
 
print "Good bye!"

以上实例输出结果:

当前水果 : banana
当前水果 : apple
当前水果 : mango
Good bye!

以上实例我们使用了内置函数 len() 和 range(),函数 len() 返回列表的长度,即元素的个数。 range返回一个序列的数。

循环使用 else 语句

在 python 中,for … else 表示这样的意思,for 中的语句和普通的没有区别,else 中的语句会在循环正常执行完(即 for 不是通过 break 跳出而中断的)的情况下执行,while … else 也是一样。

#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
for num in range(10,20): # 迭代 10 到 20 之间的数字
  for i in range(2,num): # 根据因子迭代
   if num%i == 0:   # 确定第一个因子
     j=num/i     # 计算第二个因子
     print '%d 等于 %d * %d' % (num,i,j)
     break      # 跳出当前循环
  else:         # 循环的 else 部分
   print num, '是一个质数'

以上实例输出结果:

10 等于 2 * 5
11 是一个质数
12 等于 2 * 6
13 是一个质数
14 等于 2 * 7
15 等于 3 * 5
16 等于 2 * 8
17 是一个质数
18 等于 2 * 9
19 是一个质数

以下是一些实例

for 使用案例
使用list.append()模块对质数进行输出。

#!/usr/bin/python
# -*- coding: UTF-8 -*-

# 输出 2 到 100 简的质数
prime = []
for num in range(2,100): # 迭代 2 到 100 之间的数字
  for i in range(2,num): # 根据因子迭代
   if num%i == 0:   # 确定第一个因子
     break      # 跳出当前循环
  else:         # 循环的 else 部分
   prime.append(num)
print prime

输出结果:

[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]

python3中的for语句使用

for 语句
Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串。
for循环的一般格式如下:

for <variable> in <sequence>:
  <statements>
else:
  <statements>

Python loop循环实例:
实例

>>>languages = ["C", "C++", "Perl", "Python"] 
>>> for x in languages:
...   print (x)
... 
C
C++
Perl
Python
>>>

以下 for 实例中使用了 break 语句,break 语句用于跳出当前循环体:
实例

#!/usr/bin/python3
 
sites = ["Baidu", "Google","Runoob","Taobao"]
for site in sites:
  if site == "Runoob":
    print("菜鸟教程!")
    break
  print("循环数据 " + site)
else:
  print("没有循环数据!")
print("完成循环!")

执行脚本后,在循环到 "Runoob"时会跳出循环体:
循环数据 Baidu
循环数据 Google
菜鸟教程!
完成循环!

range()函数
如果你需要遍历数字序列,可以使用内置range()函数。它会生成数列,例如:
实例

>>>for i in range(5):
...   print(i)
...
0
1
2
3
4

你也可以使用range指定区间的值:
实例

>>>for i in range(5,9) :
  print(i)
 
  
5
6
7
8
>>>

也可以使range以指定数字开始并指定不同的增量(甚至可以是负数,有时这也叫做'步长'):
实例

>>>for i in range(0, 10, 3) :
  print(i)
 
  
0
3
6
9
>>>

负数:
实例

>>>for i in range(-10, -100, -30) :
  print(i)
 
  
-10
-40
-70
>>>

您可以结合range()和len()函数以遍历一个序列的索引,如下所示:
实例

>>>a = ['Google', 'Baidu', 'Runoob', 'Taobao', 'QQ']
>>> for i in range(len(a)):
...   print(i, a[i])
... 
0 Google
1 Baidu
2 Runoob
3 Taobao
4 QQ
>>>

还可以使用range()函数来创建一个列表:
实例

>>>list(range(5))
[0, 1, 2, 3, 4]
>>>

这里就介绍到这了,其实python中for循环,结合range可以实现很多功能,下篇文章三水点靠木小编将继续为大家介绍更多关于这方便的文章。

Python 相关文章推荐
python encode和decode的妙用
Sep 02 Python
python合并文本文件示例
Feb 07 Python
Python字符和字符值(ASCII或Unicode码值)转换方法
May 21 Python
简单介绍使用Python解析并修改XML文档的方法
Oct 15 Python
Python随机生成带特殊字符的密码
Mar 02 Python
实例讲解Python编程中@property装饰器的用法
Jun 20 Python
python生成式的send()方法(详解)
May 08 Python
详解python里使用正则表达式的全匹配功能
Oct 19 Python
python 简单照相机调用系统摄像头实现方法 pygame
Aug 03 Python
Python异常处理知识点总结
Feb 18 Python
python超时重新请求解决方案
Oct 21 Python
Tensorflow中的dropout的使用方法
Mar 13 Python
Python3中类、模块、错误与异常、文件的简易教程
Nov 20 #Python
Python实现将HTML转换成doc格式文件的方法示例
Nov 20 #Python
python中学习K-Means和图片压缩
Nov 20 #Python
深入理解Python中的super()方法
Nov 20 #Python
python实现读取excel写入mysql的小工具详解
Nov 20 #Python
利用selenium 3.7和python3添加cookie模拟登陆的实现
Nov 20 #Python
python Matplotlib画图之调整字体大小的示例
Nov 20 #Python
You might like
利用PHP创建动态图像
2006/10/09 PHP
php解析xml提示Invalid byte 1 of 1-byte UTF-8 sequence错误的处理方法
2013/11/14 PHP
PHP控制前台弹出对话框的实现方法
2016/08/21 PHP
基于jQuery的投票系统显示结果插件
2011/08/12 Javascript
JS中的form.submit()不能提交表单的错误原因
2014/10/08 Javascript
谈一谈bootstrap响应式布局
2016/05/23 Javascript
javascript加减乘除的简单实例
2016/07/12 Javascript
Node.js 日志处理模块log4js
2016/08/28 Javascript
移动端界面的适配
2017/01/11 Javascript
使用jQuery的load方法设计动态加载及解决被加载页面js失效问题
2017/03/01 Javascript
jQuery插件HighCharts实现的2D对数饼图效果示例【附demo源码下载】
2017/03/09 Javascript
Vue2.0 从零开始_环境搭建操作步骤
2017/06/14 Javascript
javascript 玩转Date对象(实例讲解)
2017/07/11 Javascript
使用async、enterproxy控制并发数量的方法详解
2018/01/02 Javascript
微信小程序中使用ECharts 异步加载数据的方法
2018/06/27 Javascript
深入理解Vue 的钩子函数
2018/09/05 Javascript
详解微信小程序实现仿微信聊天界面(各种细节处理)
2019/02/17 Javascript
node链接mongodb数据库的方法详解【阿里云服务器环境ubuntu】
2019/03/07 Javascript
Python 调用VC++的动态链接库(DLL)
2008/09/06 Python
粗略分析Python中的内存泄漏
2015/04/23 Python
Python实现基于PIL和tesseract的验证码识别功能示例
2018/07/11 Python
Selenium向iframe富文本框输入内容过程图解
2020/04/10 Python
Python创建文件夹与文件的快捷方法
2020/12/08 Python
护理专业本科生自荐信
2013/10/01 职场文书
2014年会演讲稿范文
2014/01/06 职场文书
数控专业个人求职信范文
2014/02/05 职场文书
保安岗位职责
2014/02/21 职场文书
学习型党组织建设经验材料
2014/05/26 职场文书
党员干部廉洁承诺书
2014/05/28 职场文书
教师作风整改措施思想汇报
2014/10/12 职场文书
2014年度个人工作总结
2014/11/07 职场文书
2014年护理工作总结范文
2014/11/14 职场文书
2015年七一建党节活动总结
2015/03/20 职场文书
laravel ajax curd 搜索登录判断功能的实现
2021/04/17 PHP
pandas数值排序的实现实例
2021/07/25 Python
vue.js 使用原生js实现轮播图
2022/04/26 Vue.js