Python循环语句
Python 循环语句
前提:如果让你1-100之间的整数,你用程序应该怎么实现。
本章节将向大家介绍Python的循环语句,程序在一般情况下是按顺序执行的。
编程语言提供了各种控制结构,允许更复杂的执行路径。
循环语句允许我们执行一个语句或语句组多次,下面是在大多数编程语言中的循环语句的一般形式:
Python提供了for循环和while循环
循环类型 | 描述 |
while 循环 | 在给定的判断条件为 true 时执行循环体,否则退出循环体。 |
for 循环 | 重复执行语句 |
嵌套循环 | 你可以在while循环体中嵌套for循环 |
循环控制语句
循环控制语句可以更改语句执行的顺序。Python支持以下循环控制语句:
控制语句 | 描述 |
break 语句 | 在语句块执行过程中终止循环,并且跳出整个循环 |
continue 语句 | 在语句块执行过程中终止当前循环,跳出该次循环,执行下一次循环。 |
pass 语句 | pass是空语句,是为了保持程序结构的完整性。 |
Python break语句
Python break语句,打破了最近封闭for或while循环。
break语句用来终止循环语句,即循环条件没有False条件或者序列还没被完全递归完,也会停止执行循环语句。
break语句用在while和for循环中。
如果您使用嵌套循环,break语句将停止执行最深层的循环,并开始执行下一行代码。
Python语言 break 语句语法:
break
流程图:
实例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | #!/usr/bin/python for letter in 'Python' : # First Example if letter == 'h' : break print 'Current Letter :' , letter var=10 # Second Example whilevar>0: print 'Current variable value :' ,var var=var-1 ifvar==5: break print "Good bye!" |
Python continue语句
Python continue 语句跳出本次循环,而break跳出整个循环。
continue 语句用来告诉Python跳过当前循环的剩余语句,然后继续进行下一轮循环。
continue语句用在while和for循环中。
Python 语言 continue 语句语法格式如下:
continue
流程图:
实例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | #!/usr/bin/python # -*- coding: UTF-8 -*- for letter in 'Python' : # 第一个实例 if letter == 'h' : continue print '当前字母 :' , letter var=10 # 第二个实例 whilevar>0: var=var-1 ifvar==5: continue print '当前变量值 :' ,var print "Good bye!" |
实例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | # continue 和 break 用法 i =1 while i <10: i +=1 if i%2>0: # 非双数时跳过输出 continue print i # 输出双数2、4、6、8、10 i =1 while1: # 循环条件为1必定成立 print i # 输出1~10 i +=1 if i >10: # 当i大于10时跳出循环 break |
实例:取经的路上
1 | <span style= "font-family:arial, helvetica, sans-serif;font-size:18px;" ><strong><span style= "font-size:16px;font-family:'宋体';color:rgb(204,153,0);" > for < /span >< /strong ><span style= "font-size:16px;font-family:'宋体';color:rgb(155,194,142);" >i < /span ><strong><span style= "font-size:16px;font-family:'宋体';color:rgb(204,153,0);" > in < /span >< /strong ><span style= "font-size:16px;font-family:'宋体';color:rgb(0,204,204);" >range< /span ><strong><span style= "font-size:16px;font-family:'宋体';color:rgb(155,194,142);" >(< /span >< /strong ><span style= "font-size:16px;font-family:'宋体';color:rgb(249,113,187);" >1< /span ><span style= "font-size:16px;font-family:'宋体';color:rgb(155,194,142);" >,< /span ><span style= "font-size:16px;font-family:'宋体';color:rgb(249,113,187);" >11< /span ><strong><span style= "font-size:16px;font-family:'宋体';color:rgb(155,194,142);" >)< /span >< /strong ><strong><span style= "font-size:16px;font-family:'宋体';color:#FFFFFF;" >:<br> < /span >< /strong ><strong><span style= "font-size:16px;font-family:'宋体';color:rgb(204,153,0);" > if < /span >< /strong ><span style= "font-size:16px;font-family:'宋体';color:rgb(155,194,142);" >i < /span ><strong><span style= "font-size:16px;font-family:'宋体';color:#FFFFFF;" >== < /span >< /strong ><span style= "font-size:16px;font-family:'宋体';color:rgb(249,113,187);" >5< /span ><strong><span style= "font-size:16px;font-family:'宋体';color:#FFFFFF;" >:<br> < /span >< /strong ><strong><span style= "font-size:16px;font-family:'宋体';color:rgb(204,153,0);" >print < /span >< /strong ><strong><span style= "font-size:16px;font-family:'宋体';color:rgb(133,205,0);" > '</span></strong><strong><span style="font-size:16px;font-family:' 宋体 ';color:rgb(133,205,0);">睡会觉' <br> < /span >< /strong ><strong><span style= "font-size:16px;font-family:'宋体';color:rgb(204,153,0);" > continue <br> if < /span >< /strong ><span style= "font-size:16px;font-family:'宋体';color:rgb(155,194,142);" >i < /span ><strong><span style= "font-size:16px;font-family:'宋体';color:#FFFFFF;" >== < /span >< /strong ><span style= "font-size:16px;font-family:'宋体';color:rgb(249,113,187);" >80< /span ><strong><span style= "font-size:16px;font-family:'宋体';color:#FFFFFF;" >:<br> < /span >< /strong ><strong><span style= "font-size:16px;font-family:'宋体';color:rgb(204,153,0);" >print < /span >< /strong ><strong><span style= "font-size:16px;font-family:'宋体';color:rgb(133,205,0);" > '</span></strong><strong><span style="font-size:16px;font-family:' 宋体 ';color:rgb(133,205,0);">太累了,不想去了,就在女儿国吧' <br> < /span >< /strong ><strong><span style= "font-size:16px;font-family:'宋体';color:rgb(204,153,0);" > break <br> print < /span >< /strong ><strong><span style= "font-size:16px;font-family:'宋体';color:rgb(133,205,0);" > '</span></strong><strong><span style="font-size:16px;font-family:' 宋体 ';color:rgb(133,205,0);">在取经的路上,次数%d' < /span >< /strong ><strong><span style= "font-size:16px;font-family:'宋体';color:#FFFFFF;" >% < /span >< /strong ><span style= "font-size:16px;font-family:'宋体';color:rgb(155,194,142);" >i< /span >< /span > |
Python for循环语句
Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串。
语法:
for循环的语法格式如下:
for iterating_var in sequence:
statements(s)
流程图:
实例:
1 2 3 4 5 6 7 8 9 | # -*- coding: UTF-8 -*- for letter in 'Python' : # 第一个实例 print '当前字母 :' , letter fruits =[ 'banana' , 'apple' , 'mango' ] for fruit in fruits: # 第二个实例 print '当前字母 :' , fruit print "Good bye!" |
以上实例输出结果:
1 2 3 4 5 6 7 8 9 10 | 当前字母: P 当前字母: y 当前字母: t 当前字母: h 当前字母: o 当前字母: n 当前字母: banana 当前字母: apple 当前字母: mango Good bye! |
通过序列索引迭代(遍历)
另外一种执行循环的遍历方式是通过索引,如下实例:
1 2 3 4 5 6 7 | # -*- coding: UTF-8 -*- fruits =[ 'banana' , 'apple' , 'mango' ] for index in range(len(fruits)): print '当前水果 :' , fruits[index] print "Good bye!" |
以上实例输出结果:
1 2 3 4 | 当前水果: banana 当前水果: apple 当前水果: mango Good bye! |
以上实例我们使用了内置函数 len() 和 range(),函数 len() 返回列表的长度,即元素的个数。 range返回一个序列的数。
实例:求1到100的和
1 | <span style= "font-family:arial, helvetica, sans-serif;font-size:18px;" > sum = 0<br>< /span > |
for x in range(101):
sum = sum + x
print sum
实例:遍历字典
1 | <span style= "font-family:arial, helvetica, sans-serif;font-size:18px;" ><span style= "font-size:16px;font-family:'宋体';color:rgb(155,194,142);background:rgb(77,68,77);" >classmates< /span ><strong><span style= "font-size:16px;font-family:'宋体';color:#FFFFFF;" >= [< /span >< /strong ><strong><span style= "font-size:16px;font-family:'宋体';color:rgb(133,205,0);" > 'Madking' < /span >< /strong ><span style= "font-size:16px;font-family:'宋体';color:rgb(155,194,142);" >,< /span ><strong><span style= "font-size:16px;font-family:'宋体';color:rgb(133,205,0);" > 'Agon' < /span >< /strong ><span style= "font-size:16px;font-family:'宋体';color:rgb(155,194,142);" >, < /span ><strong><span style= "font-size:16px;font-family:'宋体';color:rgb(133,205,0);" > 'Michael' < /span >< /strong ><span style= "font-size:16px;font-family:'宋体';color:rgb(155,194,142);" >, < /span ><strong><span style= "font-size:16px;font-family:'宋体';color:rgb(133,205,0);" > 'Bob' < /span >< /strong ><span style= "font-size:16px;font-family:'宋体';color:rgb(155,194,142);" >, < /span ><strong><span style= "font-size:16px;font-family:'宋体';color:rgb(133,205,0);" > 'Tracy' < /span >< /strong ><strong><span style= "font-size:16px;font-family:'宋体';color:#FFFFFF;" >]<br>< /span >< /strong ><strong><span style= "font-size:16px;font-family:'宋体';color:rgb(204,153,0);" > for < /span >< /strong ><span style= "font-size:16px;font-family:'宋体';color:rgb(155,194,142);" >cls < /span ><strong><span style= "font-size:16px;font-family:'宋体';color:rgb(204,153,0);" > in < /span >< /strong ><span style= "font-size:16px;font-family:'宋体';color:rgb(155,194,142);background:rgb(70,70,77);" >classmates< /span ><strong><span style= "font-size:16px;font-family:'宋体';color:#FFFFFF;" >:<br> < /span >< /strong ><strong><span style= "font-size:16px;font-family:'宋体';color:rgb(204,153,0);" >print < /span >< /strong ><span style= "font-size:16px;font-family:'宋体';color:rgb(155,194,142);" >cls< /span >< /span > |
实例:从第一个列表中每次取出一个,从第二个列表中也每次取出一个,组合成一个新的列表,新列表中包含所有组合
1 | <span style= "font-family:arial, helvetica, sans-serif;font-size:18px;" ><span style= "font-size:16px;font-family:'宋体';color:rgb(155,194,142);" >List1 < /span ><strong><span style= "font-size:16px;font-family:'宋体';color:#FFFFFF;" >= [< /span >< /strong ><strong><span style= "font-size:16px;font-family:'宋体';color:rgb(133,205,0);" > 'zi' < /span >< /strong ><span style= "font-size:16px;font-family:'宋体';color:rgb(155,194,142);" >, < /span ><strong><span style= "font-size:16px;font-family:'宋体';color:rgb(133,205,0);" > 'qiang' < /span >< /strong ><span style= "font-size:16px;font-family:'宋体';color:rgb(155,194,142);" >, < /span ><strong><span style= "font-size:16px;font-family:'宋体';color:rgb(133,205,0);" > 'xue' < /span >< /strong ><span style= "font-size:16px;font-family:'宋体';color:rgb(155,194,142);" >, < /span ><strong><span style= "font-size:16px;font-family:'宋体';color:rgb(133,205,0);" > 'tang' < /span >< /strong ><strong><span style= "font-size:16px;font-family:'宋体';color:#FFFFFF;" >]<br>< /span >< /strong ><span style= "font-size:16px;font-family:'宋体';color:rgb(155,194,142);background:rgb(77,68,77);" >List2< /span ><strong><span style= "font-size:16px;font-family:'宋体';color:#FFFFFF;" >= [< /span >< /strong ><span style= "font-size:16px;font-family:'宋体';color:rgb(249,113,187);" >1< /span ><span style= "font-size:16px;font-family:'宋体';color:rgb(155,194,142);" >, < /span ><span style= "font-size:16px;font-family:'宋体';color:rgb(249,113,187);" >2< /span ><strong><span style= "font-size:16px;font-family:'宋体';color:#FFFFFF;" >]<br><br>< /span >< /strong ><span style= "font-size:16px;font-family:'宋体';color:rgb(155,194,142);" >new_list < /span ><strong><span style= "font-size:16px;font-family:'宋体';color:#FFFFFF;" >= []<br><br>< /span >< /strong ><strong><span style= "font-size:16px;font-family:'宋体';color:rgb(204,153,0);" > for < /span >< /strong ><span style= "font-size:16px;font-family:'宋体';color:rgb(155,194,142);" >m < /span ><strong><span style= "font-size:16px;font-family:'宋体';color:rgb(204,153,0);" > in < /span >< /strong ><span style= "font-size:16px;font-family:'宋体';color:rgb(155,194,142);" >List1< /span ><strong><span style= "font-size:16px;font-family:'宋体';color:#FFFFFF;" >:<br> < /span >< /strong ><strong><span style= "font-size:16px;font-family:'宋体';color:rgb(204,153,0);" > for < /span >< /strong ><span style= "font-size:16px;font-family:'宋体';color:rgb(155,194,142);" >n < /span ><strong><span style= "font-size:16px;font-family:'宋体';color:rgb(204,153,0);" > in < /span >< /strong ><span style= "font-size:16px;font-family:'宋体';color:rgb(155,194,142);background:rgb(70,70,77);" >List2< /span ><strong><span style= "font-size:16px;font-family:'宋体';color:#FFFFFF;" >:<br> < /span >< /strong ><span style= "font-size:16px;font-family:'宋体';color:rgb(155,194,142);" >new_list.append<strong>(< /strong >< /span ><strong><span style= "font-size:16px;font-family:'宋体';color:#FFFFFF;" >[< /span >< /strong ><span style= "font-size:16px;font-family:'宋体';color:rgb(155,194,142);" >m, n< /span ><strong><span style= "font-size:16px;font-family:'宋体';color:#FFFFFF;" >]< /span >< /strong ><strong><span style= "font-size:16px;font-family:'宋体';color:rgb(155,194,142);" >)<br><br>< /span >< /strong ><strong><span style= "font-size:16px;font-family:'宋体';color:rgb(204,153,0);" >print < /span >< /strong ><span style= "font-size:16px;font-family:'宋体';color:rgb(155,194,142);" >new_list< /span >< /span > |
实例:从一个列表中每次取出两个,找出所有组合方式
1 2 3 4 5 6 | List = [1, 2, 3, 4, 5] length = len(List) for x in range(0, length-1): for y in range(x+1, length): print List[x], List[y] |
实例:for循环输出99乘法表
for i in range(1,10):
for j in range(1,i+1):
print '%d*%d=%d' % (j,i,i*j),
print '\n'
大家课后把for 改成while循环来实现
Python for循环语句
Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串。
语法:
for循环的语法格式如下:
1 2 | for iterating_var in sequence: statements(s) |
流程图:
实例:
1 2 3 4 5 6 7 | # -*- coding: UTF-8 -*- for letter in 'Python' : # 第一个实例 print '当前字母 :' , letter fruits = [ 'banana' , 'apple' , 'mango' ] for fruit in fruits: # 第二个实例 print '当前字母 :' , fruit print "Good bye!" |
以上实例输出结果:
1 2 3 4 5 6 7 8 9 10 | 当前字母 : P 当前字母 : y 当前字母 : t 当前字母 : h 当前字母 : o 当前字母 : n 当前字母 : banana 当前字母 : apple 当前字母 : mango Good bye! |
通过序列索引迭代(遍历)
另外一种执行循环的遍历方式是通过索引,如下实例:
1 2 3 4 5 | # -*- coding: UTF-8 -*- fruits = [ 'banana' , 'apple' , 'mango' ] for index in range(len(fruits)): print '当前水果 :' , fruits[index] print "Good bye!" |
以上实例输出结果:
1 2 3 4 | 当前水果 : banana 当前水果 : apple 当前水果 : mango Good bye! |
以上实例我们使用了内置函数 len() 和 range(),函数 len() 返回列表的长度,即元素的个数。 range返回一个序列的数。
实例:求1到100的和
1 2 3 4 | sum = 0 for x in range(101): sum = sum + x print sum |
实例:遍历字典
1 2 3 | classmates = [ 'Madking' , 'Agon' , 'Michael' , 'Bob' , 'Tracy' ] for cls in classmates: print cls |
实例:从第一个列表中每次取出一个,从第二个列表中也每次取出一个,组合成一个新的列表,新列表中包含所有组合
1 2 3 4 5 6 7 | List1 = [ 'zi' , 'qiang' , 'xue' , 'tang' ] List2 = [1, 2] new_list = [] for m in List1: for n in List2: new_list.append([m, n]) print new_list |
实例:从一个列表中每次取出两个,找出所有组合方式
1 2 3 4 5 6 | List = [1, 2, 3, 4, 5] length = len(List) for x in range(0, length-1): for y in range(x+1, length): print List[x], List[y] |
实例:for循环输出99乘法表
1 2 3 4 | for i in range(1,10): for j in range(1,i+1): print '%d*%d=%d' % (j,i,i*j), print '\n' |
大家课后把for 改成while循环来实现
本文出自 “一盏烛光” 博客,谢绝转载!