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之从格式化表达式到方法
Sep 28 Python
python中dir函数用法分析
Apr 17 Python
Python编程之微信推送模板消息功能示例
Aug 21 Python
Python unittest模块用法实例分析
May 25 Python
python实现遍历文件夹修改文件后缀
Aug 28 Python
python实现AES和RSA加解密的方法
Mar 28 Python
python的移位操作实现详解
Aug 21 Python
如何安装2019Pycharm最新版本(详细教程)
Sep 26 Python
基于Python中random.sample()的替代方案
May 23 Python
Django生成数据库及添加用户报错解决方案
Oct 09 Python
Python3 多线程(连接池)操作MySQL插入数据
Jun 09 Python
Python Flask请求扩展与中间件相关知识总结
Jun 11 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数组函数序列之array_push() 数组尾部添加一个或多个元素(入栈),返回新长度。
2011/11/07 PHP
Zend的MVC机制使用分析(一)
2013/05/02 PHP
smarty简单分页的实现方法
2014/10/27 PHP
php通过strpos查找字符串出现位置的方法
2015/03/17 PHP
让iframe子窗体取父窗体地址栏参数(querystring)
2009/10/13 Javascript
jquery 按键盘上的enter事件
2014/05/11 Javascript
用简洁的jQuery方法toggleClass实现隔行换色
2014/10/22 Javascript
jQuery中closest()函数用法实例
2015/01/07 Javascript
Javascript中的几种URL编码方法比较
2015/01/23 Javascript
JS实现网页滚动条感应鼠标变色的方法
2015/02/26 Javascript
js实现头像图片切割缩放及无刷新上传图片的方法
2015/07/17 Javascript
JavaScript观察者模式(经典)
2015/12/09 Javascript
Bootstrap 填充Json数据的实例代码
2017/01/11 Javascript
Js apply方法详解
2017/02/16 Javascript
原生JS实现导航下拉菜单效果
2020/11/25 Javascript
Vue 使用 Mint UI 实现左滑删除效果CellSwipe
2018/04/27 Javascript
Vuex 快速入门(简单易懂)
2018/09/20 Javascript
vue router总结 $router和$route及router与 router与route区别
2019/07/05 Javascript
JS原型prototype和__proto__用法实例分析
2020/03/14 Javascript
[01:14]2014DOTA2展望TI 剑指西雅图newbee战队专访
2014/06/30 DOTA
python单例设计模式实现解析
2020/01/07 Python
Django认证系统user对象实现过程解析
2020/03/02 Python
如何使用Python处理HDF格式数据及可视化问题
2020/06/24 Python
Pytorch 扩展Tensor维度、压缩Tensor维度的方法
2020/09/09 Python
Python机器学习工具scikit-learn的使用笔记
2021/01/28 Python
关于canvas.toDataURL 在iOS运行失败的问题解决
2020/09/16 HTML / CSS
购买限量版收藏品、珠宝和礼品:Bradford Exchange
2016/09/23 全球购物
机电一体化专业应届本科生求职信
2013/09/27 职场文书
亲戚结婚的请假条
2014/02/11 职场文书
护理人员的自我评价分享
2014/03/15 职场文书
公司业务员岗位职责
2014/03/18 职场文书
人事专员岗位职责
2015/02/03 职场文书
产品调价通知函
2015/04/20 职场文书
JavaScript中关于预编译、作用域链和闭包的理解
2021/03/31 Javascript
redis内存空间效率问题的深入探究
2021/05/17 Redis
V Rising 服务器搭建图文教程
2022/06/16 Servers