python语句结构

来源:互联网 发布:行省制的影响知乎 编辑:程序博客网 时间:2024/06/16 01:49

顺序结构

python脚本执行时,按照从上到下的顺序依次执行,如果遇到特殊语句,可能会跳过或者插入执行,所以在编写python脚本时,需要考虑脚本执行逻辑顺序的问题。
例如以下代码,根据执行结果,可以反应出是按照从上到下顺序依次执行的。

print "hello !"print "welcome to my blog !"

分支结构

  • if
    if的使用形式一般是”if 表达式: 语句”,如果表达式条件符合,直接执行下面语句,条件不符合,不进行任何操作;
    例如下面代码,当a的值为3,当a的值大于2时,执行语句输出”a > 2”;
a = 3if 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:        breakfor 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 += 1print "over !"while a < 3:        print "hello !"        a += 1else:    print "over !"

pass

pass代表只占用一个语句块的位置,无任何操作,使得语句格式完成,代码可以执行;例如下面代码,pass不执行任何操作,但如果只写入else,不写入pass,代码无法执行;
if a > 3:    print "a > 3"else:    pass