Python循環(huán)語句

2018-06-08 17:14 更新

Python 循環(huán)語句

前提:如果讓你1-100之間的整數(shù),你用程序應該怎么實現(xiàn)。

本章節(jié)將向大家介紹Python的循環(huán)語句,程序在一般情況下是按順序執(zhí)行的。

編程語言提供了各種控制結構,允許更復雜的執(zhí)行路徑。

循環(huán)語句允許我們執(zhí)行一個語句或語句組多次,下面是在大多數(shù)編程語言中的循環(huán)語句的一般形式:

Python提供了for循環(huán)和while循環(huán)

循環(huán)類型

while 循環(huán)

在給定的判斷條件為 true 時執(zhí)行循環(huán)體,否則退出循環(huán)體。

for 循環(huán)

重復執(zhí)行語

嵌套循環(huán)

你可以在while循環(huán)體中嵌套for環(huán)

 

循環(huán)控制語

循環(huán)控制語句可以更改語句執(zhí)行的順序。Python支持以下循環(huán)控制語句:

控制語句

break 語句

在語句塊執(zhí)行過程中終止循環(huán),并且跳出整個循環(huán)

continue 語句

在語句塊執(zhí)行過程中終止當前循環(huán),跳出該次循環(huán),執(zhí)行下一次循環(huán)。

pass 語句

pass是空語句,是為了保持程序結構的完整性

 

 

Python break語句

Python break語句,打破了最近封閉for或while循環(huán)。

break語句用來終止循環(huán)語句,即循環(huán)條件沒有False條件或者序列還沒被完全遞歸完,也會停止執(zhí)行循環(huán)語句。

break語句用在while和for循環(huán)中。

如果您使用嵌套循環(huán),break語句將停止執(zhí)行最深層的循環(huán),并開始執(zhí)行下一行代碼。

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 語句跳出本次循環(huán),而break跳出整個循環(huán)。

continue 語句用來告訴Python跳過當前循環(huán)的剩余語句,然后繼續(xù)進行下一輪循環(huán)。

continue語句用在whilefor循環(huán)中。

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:     # 非雙數(shù)時跳過輸出
       continue
    print i        # 輸出雙數(shù)2、4、6、8、10
  
i =1
while1:           # 循環(huán)條件為1必定成立
    print i        # 輸出1~10
    i +=1
    if i >10:     # 當i大于10時跳出循環(huán)
       break

實例:取經(jīng)的路上

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);">在取經(jīng)的路上,次數(shù)%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循環(huán)語句

Python for循環(huán)可以遍歷任何序列的項目,如一個列表或者一個字符串。

語法

for循環(huán)的語法格式如下

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!


通過序列索引迭代(遍歷)

另外一種執(zhí)行循環(huán)的遍歷方式是通過索引,如下實例

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!

以上實例我們使用了內置函數(shù) len() range(),函數(shù) len() 返回列表的長度,即元素的個數(shù)。 range返回一個序列的數(shù)。

 

實例:求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循環(huán)輸出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循環(huán)來實現(xiàn)

Python for循環(huán)語句

Python for循環(huán)可以遍歷任何序列的項目,如一個列表或者一個字符串。

語法:

for循環(huán)的語法格式如下:

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!


通過序列索引迭代(遍歷)

另外一種執(zhí)行循環(huán)的遍歷方式是通過索引,如下實例:

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!

以上實例我們使用了內置函數(shù) len() 和 range(),函數(shù) len() 返回列表的長度,即元素的個數(shù)。 range返回一個序列的數(shù)。


實例:求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循環(huán)輸出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循環(huán)來實現(xiàn)

 


本文出自 “一盞燭光” 博客,謝絕轉載!

以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號