5.1 Python的缩进
一、Python的缩进和冒号
Python并不像其他语言要求{},仅仅使用tab键来区分代码的逻辑性。
对于Python而言代码缩进是一种语法,Python没有像其他语言一样采用{}或者begin...end分隔代码块,而是采用代码缩进和冒号来区分代码之间的层次。
缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行。
二、if条件判断
if后面跟条件进行判断,如果后面为真,才执行后面缩进的代码,如果条件为假,就直接跳过if语句。
格式:
if 判断条件:
执行语句
else:
执行语句
实例:
可以通过不断改变a的值来打印不同的执行结果,代码如下所示:
a=3
if a<-1:
print('a 是负数')
else a==0:
print('a等于0')
else:
print('a是正数')
当你不断改变a=0,a=3,a=-3,最终打印的结果是不是一样?
运行结果:
a 是正数
三、while 循环
很多情况程序可以为我们做很多重复而又同样的工作,都是通过循环来实现的。
格式为:
while 判断条件:
执行语句
解释说明:
while在执行的时候,先看判断语句,只要为真,就执行语句,执行完语句后,在执行判断语句,一般我们都会在判断条件这里设置一个变量,在执行语句的时候对这个变量进行操作,一直执行到判断条件为假时,退出,执行后面的代码。
如果刚开始判断就为假,则直接跳过while
例子:
m = 3
print("start process")
while m >0:
print("m = " + str(m))
m -= 1
print("end process")
运行结果:
start process
m = 3
m = 2
m = 1
end process
四、for循环
for循环主要是在工作中遍历列表,字符串,文件等操作,for循环默认是循环到元素完为止,for循环的格式如下:
for iterating_var in sequence:
statements(s)
例1:
a = dict(a=1,b=2,c=3,d=4)
for i,j in enumerate(a):
print(i,j)
运行结果:
(0, 'a')
(1, 'c')
(2, 'b')
(3, 'd')
例2:
n = ['a','b','c','d']
for i,j in enumerate(n):
print(i,j)
运行结果:
(0, 'a')
(1, 'b')
(2, 'c')
(3, 'd')
enumerate()函数,默认分离key和value,在for循环中,通过i,j自动分别赋值key和value,然后所有的都遍历出来,如果是列表,就自动遍历下标和列表元素。
例3:
for i in xrange(1,5):
print('a = ' + str(i))
运行结果:
a = 1
a = 2
a = 3
a = 4
注意:xrange函数在数字的变量中经常遇到,xrange第一个参数代表开始的值,第二个参数结束值,但是最大值只能取:结束值-1,xrange并不在内存中全部生成,只有我们取的时候生成。
五、continue和break
break 语句用来终止循环,即使循环条件没有False条件或者序列还没有全部遍历完成,都会停止循环语句。
例1:
for i in xrange(10):
if i >3:
break
print('a = ' + str(i))
运行结果:
a = 0
a = 1
a = 2
a = 3
当a=4时,停止循环,所以以后的操作都没有意义,直接跳出循环结束。
continue 语句跳出本次循环,而break跳出整个循环
continue 语句跳过当前循环的剩余语句,然后继续进行下一轮循环
例2:
for i in xrange(5):
if i == 3:
continue
print('a = '+ str(i))
运行结果:
a = 0
a = 1
a = 2
a = 4
当i = 3 时,直接跳出本次循环,接着下次循环继续进行,所以a=3这个就被忽略了。