顺序结构
python脚本执行时,按照从上到下的顺序依次执行,如果遇到特殊语句,可能会跳过或者插入执行,所以在编写python脚本时,需要考虑脚本执行逻辑顺序的问题。
例如以下代码,根据执行结果,可以反应出是按照从上到下顺序依次执行的。
print "hello !"
print "welcome to my blog !"
分支结构
- if
if的使用形式一般是”if 表达式: 语句”,如果表达式条件符合,直接执行下面语句,条件不符合,不进行任何操作;
例如下面代码,当a的值为3,当a的值大于2时,执行语句输出”a > 2”;
a = 3
if a > 2 :
print "a > 2 "
- if…else…
if…else…一般使用在判断结果只有两种,且在两种结果之后分别执行不同的语句;
例如下图代码,判断a的值是否大于2,当a大于2时输出”yes !”,当a不大于2时输出”no !”;
if a > 2:
print "yes !"
else :
print "no !"
- if…elif…else…
if…elif…else…一般使用在有两种以上判断情况,不同的判断结果需要执行不同的语句,其他情况,执行else下的语句。该语句中的elif不限个数;
例如下图代码,当a>2时,输出”yes !”,当a=2时,输出”a = 2”,其余情况,输出”no !”。
if a > 2:
print "yes !"
elif a = 2:
print "a = 2"
else :
print "no !"
需要注意的是:在python里不支持switch语句,如果要实现switch的效果,第一种方法是使用if…elif…elif…else…,第二种方法是使用字典来实现;
循环结构
for循环
- range(m,n,x)
从m起始,至n-1结束(不包括n),x代表步长,不输入默认为1;
其应用的结构代码如下所示,表示for循环,i的范围为1-9。其中的range(1,10)也可以换成可迭代的类型,如字符串,列表,元组等;
for i in range(1,10):
print i
break和contiune
- break:跳出循环,不再执行循环;
- continue:跳出本次循环,继续执行下一个循环;
其应用如下代码所示,第一个语句块中有break,表示如果i>3时,跳出整个循环,所以输出为”1 2”。第二个语句块中的continue表示跳出该此循环,执行下一次循环,所以输出为”1 2 3 4 5 6 7 8 9”;
for i in range(1,10):
print i
if i > 3:
break
for i in range(1,10):
print i
if i > 3:
continue
while循环
- while
while循环的结构是”while 表达式: 循环语句”,当表达式符合即表达式为True时,执行循环语句,当表达式不符合即为False时,循环结束,如果将表达式写为”True”,则为无限循环,写为”False”时,不进入循环;
while循环的结构代码如下所示,当a < 3时,进入循环,执行while下的语句,当a大于等于3时,跳出循环。
while a < 3:
print "hello !"
a += 1
- while…else…
while…else…与while相同,加入else后能比较比较清楚的看到代码结构,便于读代码;
例如下面代码,两个语句块执行后的结果是相同的,但是有else的代码能更便于分辨代码;
while a < 3:
print "hello !"
a += 1
print "over !"
while a < 3:
print "hello !"
a += 1
else:
print "over !"
pass
pass代表只占用一个语句块的位置,无任何操作,使得语句格式完成,代码可以执行;
例如下面代码,pass不执行任何操作,但如果只写入else,不写入pass,代码无法执行;
if a > 3:
print "a > 3"
else:
pass