独特的python循环语句

yipeiwu_com6年前Python基础

1、局部变量

for i in range(5):
  print i,

print i,

运行结果:

0 1 2 3 4 4

i是for语句里面的局部变量。但在python里面,在同一方法体内,定义了一个局部变量,该变量的作用域是定义行开始至该方法体结束。

在其他编程语言,“print i”那一句是有误的,因为i没有定义

例1:

def func():
  a = 100
  if a > 50:
    b = True
  print b

if __name__ == '__main__':
  func()

结果:

True

例2:

def func():
  a = 100
  if a > 50:
    b = True
  print b

if __name__ == '__main__':
  func()
  print b

最后一行有误,因为没有定义b,func()方法里面的b是函数体内的局部变量,所以main里面的“print b”有误。

2、python的for循环控制语句

例子1:

for i in range(5):
  for j in range(6):
    print (i,j),
  print

运行结果:

(0, 0) (0, 1) (0, 2) (0, 3) (0, 4) (0, 5)

(1, 0) (1, 1) (1, 2) (1, 3) (1, 4) (1, 5)

(2, 0) (2, 1) (2, 2) (2, 3) (2, 4) (2, 5)

(3, 0) (3, 1) (3, 2) (3, 3) (3, 4) (3, 5)

(4, 0) (4, 1) (4, 2) (4, 3) (4, 4) (4, 5)

例子2:

求[50,100]之间的质数

import math
cout = 0
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,
    cout +=1
    if cout % 10 == 0:
      cout = 0
      print
    #break #此处不能加break,否则将外面的forbreak,因为此层次的else与第二个for是并排关系

运行结果:

53 59 61 67 71 73 79 83 89 97

解析:

for 语句是python中的循环控制语句。可用来遍历某一对象,还具有一个附带可选的else块,主要用来处理for语句中包含break语句。

如果for循环未被break终止,则执行else中的语句。for在需要时终止for循环。

for语句的格式如下:

for <> in <对象集合>:
  if <条件1>:
    break
  if <条件2>:
    continue
  <其他语句>
else:
  <...>

相关文章

使用python对文件中的单词进行提取的方法示例

使用python对文件中的单词进行提取的方法示例

由于需要使用一个纯单词组成的文件,在网上下载到了一个存放单词的文件,但是里面有中文的解释,那就需要做一下提取了。 文本的形式如下: 所见即所得,这个文本是有规律的,每个单词为一行,紧...

python中文乱码不着急,先看懂字节和字符

Python2.x使用过程中,中文乱码解决最耳熟能详的方法就是在代码前加上#-*- coding:utf-8 –*- 那么为什么需要这么做呢?什么又是字节和字符?下面我们了解下。 我来讲...

举例讲解Python中is和id的用法

(ob1 is ob2) 等价于 (id(ob1) == id(ob2)) 首先id函数可以获得对象的内存地址,如果两个对象的内存地址是一样的,那么这两个对象肯定是一个对象。和is是等价...

python中使用正则表达式的连接符示例代码

前言 我们在前面的例子里,我们学习使用集合里字符或非集合里的字符,这时都是要把每个字符写出来的,但是有时需要把26个小写字母都放到集合里,那么按集合的方法,得输入26次,一个一个键入去,...

Python3中的列表生成式、生成器与迭代器实例详解

本文实例讲述了Python3中的列表生成式、生成器与迭代器。分享给大家供大家参考,具体如下: 列表生成式 Python内置的一种极其强大的生成列表 list 的表达式。返回结果必须是列表...