千锋教育-做有情怀、有良心、有品质的IT职业教育机构

400-811-9990
当前位置:千锋视频教程 > python视频教程  >  CrazyWing:Python自动化运维开发实战 六、流程控制

CrazyWing:Python自动化运维开发实战 六、流程控制

时间:2018-01-03 14:08:58     来源:千锋视频教程 作者:闫老师

PYTHON 条件语句

Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。

Python程序语言指定任何非0和非空(null)值为true,0 或者 null为false。

if 语句用于控制程序的执行,基本形式为:

if 判断条件:     执行语句…… else:     执行语句……

其中"判断条件"成立时(非零),则执行后面的语句,而执行内容可以多行,以缩进来区分表示同一范围。

else 为可选语句,当需要在条件不成立时执行内容则可以执行相关语句

if 语句的判断条件可以用>、<、==、>=、<=来表示其关系。

当判断条件为多个值时,可以使用以下形式:

if 判断条件1:     执行语句1…… elif 判断条件2:     执行语句2…… elif 判断条件3:     执行语句3…… else:     执行语句4……

由于 python 并不支持 switch 语句,所以多个条件判断,只能用 elif 来实现。

如果判断需要多个条件需同时判断时,可以使用 or (或),表示两个条件有一个成立时判断条件成功;

使用 and (与)时,表示只有两个条件同时成立的情况下,判断条件才成功。

#!/usr/bin/python num = 9 if num >= 0 and num <= 10:         print 'hello'  num = 10 if num < 0 or num > 10:        print 'hello' else:     print 'undefine'  num = 8 if (num >= 0 and num <= 5) or (num >= 10 and num <= 15):         print 'hello' else:     print 'undefine'

简单的IF语句组

你也可以在同一行的位置上使用if条件判断语句,如下实例:

var = 100  if ( var  == 100 ) : print "变量 var 的值为100"      print "Good bye!" 

PYTHON 循环语句

循环语句允许我们执行一个语句或语句组多次

Python提供了for循环和while循环(在Python中没有do..while循环):

while 循环     在给定的判断条件为 true 时执行循环体,否则退出循环体。  for 循环      重复执行语句  嵌套循环      你可以在while循环体中嵌套for循环

循环控制语句

循环控制语句可以更改语句执行的顺序。Python支持以下循环控制语句:

break 语句      在语句块执行过程中终止循环,并且跳出整个循环    continue 语句      在语句块执行过程中终止当前循环,跳出该次循环,执行下一次循环。    pass 语句      pass是空语句,是为了保持程序结构的完整性。 

Python While循环语句

基本形式为:

while 判断条件:     执行语句……

执行语句可以是单个语句或语句块。判断条件可以是任何表达式,任何非零、或非空(null)的值均为true。

当判断条件假false时,循环结束。

实例: #!/usr/bin/python count = 0 while (count < 9):     print 'The count is:', count     count = count + 1     print "Good bye!" 

continue 用于跳过该次循环,break 则是用于退出循环,此外"判断条件"还可以是个常值,表示循环必定成立,具体用法如下:

# continue 和 break 用法 i = 1 while i < 10:        i += 1     if i%2 > 0:     # 非双数时跳过输出         continue     print i             # 输出双数2、4、6、8、10  i = 1 while 1:            # 循环条件为1必定成立     print i           # 输出1~10     i += 1     if i > 10:       # 当i大于10时跳出循环         break

无限循环

如果条件判断语句永远为 true,循环将会无限的执行下去,如下实例:

#!/usr/bin/python # -*- coding: UTF-8 -*- var = 1 while var == 1 :    # 该条件永远为true,循环将无限执行下去    num = raw_input("Enter a number  :")    print "You entered: ", num print "Good bye!" 

循环使用 else 语句

在 python 循环里,else 中的语句会在循环正常执行完,即循环不是通过 break 跳出而中断的情况下执行

#!/usr/bin/python count = 0 while count < 5:    print count, " is  less than 5"    count = count + 1 else:    print count, " is not less than 5"

简单while语句组

类似if语句的语法,如果你的while循环体中只有一条语句,你可以将该语句与while写在同一行中, 如下所示:

    flag = 1     while (flag): print 'Given flag is really true!'

Python For 循环语句

Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串。

for循环的语法格式如下

for iterating_var in sequence:      statements(s)   

实例

#!/usr/bin/python # -*- coding: UTF-8 -*- for letter in 'Python':     print '当前字母 :', letter  fruits = ['banana', 'apple',  'mango'] for fruit in fruits:     print '当前字母 :', fruit  以上实例输出结果: 当前字母 : P 当前字母 : y 当前字母 : t 当前字母 : h 当前字母 : o 当前字母 : n 当前字母 : banana 当前字母 : apple 当前字母 : mango

通过序列索引迭代

另外一种执行循环的遍历方式是通过索引,如下实例:

#!/usr/bin/python # -*- coding: UTF-8 -*- fruits = ['banana', 'apple',  'mango'] for index in range(len(fruits)):    print '当前水果 :', fruits[index]

以上实例输出结果:

当前水果 : banana 当前水果 : apple 当前水果 : mango

以上实例我们使用了内置函数 len() 和 range(),函数 len() 返回列表的长度,即元素的个数。 range返回一个序列的数。

循环使用 else 语句

如下实例:

#!/usr/bin/python # -*- coding: UTF-8 -*- for num in range(10,20):  # 迭代 10 到 20 之间的数字      for i in range(2,num): # 根据因子迭代             if num%i == 0:      # 确定第一个因子                  j=num/i          # 计算第二个因子                  print '%d 等于 %d * %d' % (num,i,j)                  break            # 跳出当前循环      else:                  # 循环的 else 部分             print num, '是一个质数'

以上实例输出结果:

    10 等于 2 * 5     11 是一个质数     12 等于 2 * 6     13 是一个质数     14 等于 2 * 7     15 等于 3 * 5     16 等于 2 * 8     17 是一个质数     18 等于 2 * 9     19 是一个质数

Python 循环嵌套

Python 语言允许在一个循环体里面嵌入另一个循环。

Python For 循环嵌套语法:

for iterating_var in sequence:      for iterating_var in sequence:             statements(s)      statements(s)

Python While 循环嵌套语法:

while expression:      while expression:             statement(s)      statement(s)

Continue和Break语句:

continue 语句跳出本次循环,而break跳出整个循环。

continue 语句用来告诉Python跳过当前循环的剩余语句,然后继续进行下一轮循环。

PYTHON PASS 语句

Python pass是空语句,是为了保持程序结构的完整性。

pass 不做任何事情,一般用做占位语句。

Python 语言 pass 语句语法格式如下:

pass

实例:

#!/usr/bin/python # -*- coding: UTF-8 -*-  # 输出 Python 的每个字母 for letter in 'Python':    if letter == 'h':       pass       print '这是 pass 块'    print '当前字母 :', letter    print "Good bye!"

以上实例执行结果:

当前字母 : P 当前字母 : y 当前字母 : t 这是 pass 块 当前字母 : h 当前字母 : o 当前字母 : n Good bye!     

 

  • 北京天丰利校区(总部):北京市海淀区宝盛北里西区28号天丰利商城4层
    北京沙河校区:北京市昌平区沙阳路18号北京科技职业技术学院广场服务楼2层、南区服务楼2层
    咨询电话:400-186-9990 010-82790226-801
    面授课程:全栈HTML5+培训、UI交互设计培训、PHP培训、JavaEE+云数据培训、大数据开发培训、VR/AR混合
    现实培训、Python培训、Linux云计算培训、软件测试培训、Android培训、iOS培训、好程序员
  • 深圳西部硅谷校区地址:深圳市宝安区宝安大道5010号深圳西部硅谷B座A区605-619
    深圳大学城校区地址:深圳市南山区留仙大道1201号大学城创客小镇16栋2楼、3楼
    咨询电话:0755-33582485-801(硅谷校区)0755-86660670-801(大学城校区)
    面授课程:全栈HTML5+培训、UI交互设计培训、PHP培训、JavaEE+云数据培训、Android培训、iOS培训
  • 上海校区地址:上海市宝山区同济支路199号智慧七立方3号楼2-4层
    咨询电话:400-627-7899 021-56166283/56166279
    面授课程:全栈HTML5+培训、UI交互设计培训、JavaEE+云数据培训、Android课程培训、iOS课程培训、好程序员
  • 郑州校区地址:郑州市金水区纬五路21号河南教育学院综合楼(经纬中学楼)7/8层
    咨询电话:0371-55191750 400-186-9990
    面授课程:全栈HTML5+培训、UI交互设计培训、PHP培训、JavaEE+云数据培训、Android课程培训、iOS课程培训
  • 广州校区地址:广州市天河区元岗路310号智汇park创意园E座5层
    咨询电话:020-22119207 400-186-9990
    面授课程:全栈HTML5+培训、JavaEE+云数据培训、Android课程培训、iOS课程培训
  • 大连校区地址:辽宁省大连市甘井子区软件园路2号东软信息学院B5座一楼
    咨询电话:0411-39026086 400-186-9990
    面授课程:全栈HTML5+培训、JavaEE+云数据培训、UI交互设计培训、Android课程培训、iOS课程培训
  • 武汉校区地址:武汉市光谷大道61号智慧园21号楼2层
    咨询电话:027-65523826
    面授课程:全栈HTML5+培训、JavaEE+云数据培训、Android课程培训、iOS课程培训
  • 成都校区地址:成都市武侯区科华北路62号力宝大厦N(北楼)18楼
    咨询电话:028-83178771
    面授课程:全栈HTML5+培训、UI交互设计培训、PHP培训、JavaEE+云数据培训、Android课程培训、iOS课程培训
  • 西安校区地址:西安市雁塔区高新六路52号立人科技C座西区4楼
    咨询电话:029-85260160
    面授课程:全栈HTML5+培训、JavaEE+云数据培训、Android课程培训
  • 杭州校区地址:浙江省杭州市江干区九堡旺田书画城A座4层
    咨询电话:0571-86893632 010-82790226-801
    面授课程:全栈HTML5+培训、JavaEE+云数据培训、Android课程培训、iOS课程培训
  • 青岛校区地址:青岛市市南区金坛路17号青岛职业技术学院南校区实训楼A4层
    咨询电话:0532-80910752/3 010-82790226-801
    面授课程:全栈HTML5+培训、UI交互设计培训、JavaEE+云数据培训、Android课程培训、iOS课程培训
  • 重庆校区地址:重庆市高新区科园一路2号大西洋国际12-1
    咨询电话:023-68883009
    面授课程:JavaEE+云数据课程培训
  • 长沙校区地址:湖南省长沙市岳麓区麓谷企业广场A2栋三单元306号
    咨询电话:0731-85513010/85513210
    面授课程:JavaEE+云数据课程培训
  • 哈尔滨校区地址:哈尔滨市松北区创新一路699号科技创新城19号楼五楼
    咨询电话:15663846969
    面授课程:全栈HTML5+培训
  • 千锋教育服务号

    了解千锋动态
    关注千锋教育服务号

  • 千锋互联服务号

    扫码匿名提建议
    直达CEO信箱