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实现的一个p2p文件传输实例
Jun 04 Python
Python中让MySQL查询结果返回字典类型的方法
Aug 22 Python
Python中的高级数据结构详解
Mar 27 Python
python opencv 直方图反向投影的方法
Feb 24 Python
python3使用matplotlib绘制散点图
Mar 19 Python
详解用python写网络爬虫-爬取新浪微博评论
May 10 Python
Python学习笔记之抓取某只基金历史净值数据实战案例
Jun 03 Python
python实现对图片进行旋转,放缩,裁剪的功能
Aug 07 Python
如何获取Python简单for循环索引
Nov 21 Python
django修改models重建数据库的操作
Mar 31 Python
python 实现mysql自动增删分区的方法
Apr 01 Python
Python实现byte转integer
Jun 03 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
Zerg兵种介绍
2020/03/14 星际争霸
PHP获取input输入框中的值去数据库比较显示出来
2016/11/16 PHP
golang、python、php、c++、c、java、Nodejs性能对比
2017/03/12 NodeJs
Laravel使用消息队列需要注意的一些问题
2017/12/13 PHP
javascript 硬盘序列号+其它硬件信息
2008/12/23 Javascript
基于jquery的多功能软键盘插件
2012/07/25 Javascript
Js获取下拉框选定项的值和文本的实现代码
2014/02/26 Javascript
Javascript中的匿名函数与封装介绍
2015/03/15 Javascript
jQuery使用fadein方法实现渐出效果实例
2015/03/27 Javascript
JavaScript基于setTimeout实现计数的方法
2015/05/08 Javascript
七个不允许错过的jQuery小技巧
2015/12/21 Javascript
jquery 获取select数组与name数组长度的实现代码
2016/06/20 Javascript
Three.js基础部分学习
2017/01/08 Javascript
vue中将网页打印成pdf实例代码
2017/06/15 Javascript
微信小程序授权获取用户详细信息openid的实例详解
2017/09/20 Javascript
vue-resource拦截器设置头信息的实例
2017/10/27 Javascript
jQuery实现的监听导航滚动置顶状态功能示例
2018/07/23 jQuery
小程序如何支持使用 async/await详解
2019/09/12 Javascript
适用于 Vue 的播放器组件Vue-Video-Player操作
2020/11/16 Javascript
[01:17]辉夜杯战队访谈宣传片—EHOME
2015/12/25 DOTA
八大排序算法的Python实现
2021/01/28 Python
python脚本设置系统时间的两种方法
2016/02/21 Python
Python字符串格式化输出方法分析
2016/04/13 Python
一个基于flask的web应用诞生 组织结构调整(7)
2017/04/11 Python
python数据抓取分析的示例代码(python + mongodb)
2017/12/25 Python
Python计算库numpy进行方差/标准方差/样本标准方差/协方差的计算
2018/12/28 Python
详解用python生成随机数的几种方法
2019/08/04 Python
python实现对服务器脚本敏感信息的加密解密功能
2019/08/13 Python
在django中实现choices字段获取对应字段值
2020/07/12 Python
canvas实现圆绘制的示例代码
2019/09/11 HTML / CSS
HTML5 embed标签定义和用法详解
2014/05/09 HTML / CSS
意大利奢侈品网站:Italist
2016/08/23 全球购物
个人简历自我评价范文
2014/02/04 职场文书
庆六一文艺汇演活动方案
2014/08/26 职场文书
2014年减负工作总结
2014/12/10 职场文书
2015中学学校工作总结
2015/07/20 职场文书