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),
运行结果:
(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
#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:
<...>