Python循环语句

2018-06-08 17:14 更新

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语句用在whilefor循环中

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返回一个序列的数

 

实例:求1100的和

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 in range(0, length-1):
    for 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 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 in List1:
    for 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 in range(0, length-1):
    for in range(x+1, length):
        print List[x], List[y]


实例:for循环输出99乘法表


1
2
3
4
for in range(1,10):
    for in range(1,i+1):
        print '%d*%d=%d' % (j,i,i*j),
    print '\n'

大家课后把for 改成while循环来实现

 


本文出自 “一盏烛光” 博客,谢绝转载!

以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号