欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

簡(jiǎn)單談?wù)凱ython流程控制語(yǔ)句

 更新時(shí)間:2016年12月04日 10:17:55   投稿:hebedich  
流程控制是程序設(shè)計(jì)中一個(gè)重要的內(nèi)容,Python支持三種不同的控制結(jié)構(gòu):if,for和while,下面我們來(lái)簡(jiǎn)單談?wù)凱ython中的流程控制語(yǔ)句

人們常說(shuō)人生就是一個(gè)不斷做選擇題的過(guò)程:有的人沒(méi)得選,只有一條路能走;有的人好一點(diǎn),可以二選一;有些能力好或者家境好的人,可以有更多的選擇;還有一些人在人生的迷茫期會(huì)在原地打轉(zhuǎn),找不到方向。對(duì)于相信有上帝的人來(lái)講,這就好像是上帝事先為我們制定好了人生路線,也好像是那些神仙為唐曾師徒的取經(jīng)之路提前設(shè)置的重重磨難,上帝和神仙掌控了一切。編程語(yǔ)言可以模擬人類生活的方方面面,程序員就像上帝和神仙一樣可以通過(guò)編程語(yǔ)言中特殊的關(guān)鍵字控制程序的執(zhí)行過(guò)程,這些關(guān)鍵字組成的就是流程控制語(yǔ)句。

編程語(yǔ)言中的流程控制語(yǔ)句分為以下幾類:

  1. 順序語(yǔ)句
  2. 分支語(yǔ)句
  3. 循環(huán)語(yǔ)句

其中順序語(yǔ)句不需要單獨(dú)的關(guān)鍵字來(lái)控制,就是一行行的執(zhí)行,不需要特殊的說(shuō)明。這里主要要說(shuō)的是 分支語(yǔ)句 和 循環(huán)語(yǔ)句。

一、分支語(yǔ)句

條件分支語(yǔ)句是通過(guò)一條或多條語(yǔ)句(判斷條件)的執(zhí)行結(jié)果(True/False)來(lái)決定執(zhí)行哪個(gè)分支的代碼塊。Python中提供的分支語(yǔ)句為:if..else語(yǔ)句,沒(méi)有提供switch..case語(yǔ)句。if..else語(yǔ)句有以下幾種形式:

單分支:
if 判斷條件:
    代碼塊
如果單分支語(yǔ)句的代碼塊只有一條語(yǔ)句,可以把if語(yǔ)句和代碼寫(xiě)在同一行:

if 判斷條件: 一句代碼
實(shí)例:判斷指定的uid是不是root用戶

uid = 0

if uid == 0:
  print("root")

也可以這樣寫(xiě):

uid = 0

if uid == 0: print("root")

輸出結(jié)果:root

雙分支:

if 判斷條件:
    代碼塊
else:
    代碼塊
實(shí)例:根據(jù)用戶id打印用戶身份

uid = 100

if uid == 0:
  print("root")
else:
  print("Common user")

輸出結(jié)果:Common user

多分支:

if 判斷條件1:
    代碼塊1
elif 判斷條件2:
    代碼塊2
...
elif 判斷條件n:
    代碼塊n
else:
    默認(rèn)代碼塊

實(shí)例:根據(jù)學(xué)生分?jǐn)?shù)打印字母等級(jí)

score = 88.8
level = int(score % 10)

if level >= 10:
  print('Level A+')
elif level == 9:
  print('Level A')
elif level == 8:
  print('Level B')
elif level == 7:
  print('Level C')
elif level == 6:
  print('Level D')
else:
  print('Level E')

輸出結(jié)果:Level B

說(shuō)明:

當(dāng)上面的“判斷條件”中的表達(dá)式可以是任意的表達(dá)式,也可以是任意類型的數(shù)據(jù)對(duì)象實(shí)例。只要判斷條件的最終返回結(jié)果的“真”值測(cè)試為True時(shí),就表示該條件成立,相應(yīng)的代碼塊就會(huì)被執(zhí)行;否則表示條件不成立,需要判斷下一個(gè)條件。

二、循環(huán)語(yǔ)句

當(dāng)我們需要多次執(zhí)行一個(gè)代碼語(yǔ)句或代碼塊時(shí),可以使用循環(huán)語(yǔ)句。Python中提供的循環(huán)語(yǔ)句有:while循環(huán)和for循環(huán)。需要注意的是Python中沒(méi)有do..while循環(huán)。此外,還有幾個(gè)用于控制循環(huán)執(zhí)行過(guò)程的循環(huán)控制語(yǔ)句:break、continue和pass。

1. while循環(huán)

基本形式
while循環(huán)語(yǔ)句的基本形式如下:

while 判斷條件:
    代碼塊
當(dāng)給定的判斷條件的返回值的真值測(cè)試結(jié)果為True時(shí)執(zhí)行循環(huán)體的代碼,否則退出循環(huán)體。

實(shí)例:循環(huán)打印數(shù)字0-9

count = 0
while count <= 9:
  print(count, end=' ')
  count += 1

輸出結(jié)果:0 1 2 3 4 5 6 7 8 9

while死循環(huán)

當(dāng)while的判斷條件一直為True時(shí),while循環(huán)體中代碼就會(huì)永遠(yuǎn)循環(huán)下去。

while True:
    print("這是一個(gè)死循環(huán)")
輸出結(jié)果:

這是一個(gè)死循環(huán)
這是一個(gè)死循環(huán)
這是一個(gè)死循環(huán)
...
此時(shí)可以通過(guò) Ctrl + C終止運(yùn)行。

while..else
語(yǔ)句形式:

while 判斷條件:
    代碼塊
else:
    代碼塊
else中的代碼塊會(huì)在while循環(huán)正常執(zhí)行完的情況下執(zhí)行,如果while循環(huán)被break中斷,else中的代碼塊不會(huì)執(zhí)行。

實(shí)例1:while循環(huán)正常執(zhí)行結(jié)束的情況(else中的語(yǔ)句會(huì)被執(zhí)行)

count = 0
while count <=9:
  print(count, end=' ')
  count += 1
else:
  print('end')

執(zhí)行結(jié)果為:0 1 2 3 4 5 6 7 8 9 end

實(shí)例2:while循環(huán)被中斷的情況(else中的語(yǔ)句不會(huì)被執(zhí)行)

count = 0
while count <=9:
  print(count, end=' ')
  if count == 5:
    break
  count += 1
else:
  print('end')

輸出結(jié)果:0 1 2 3 4 5

2. for循環(huán)

for循環(huán)通常用于遍歷序列(如list、tuple、range、str)、集合(如 set)和映射對(duì)象(如dict)。

基本形式
for循環(huán)的基本格式:

for 臨時(shí)變量 in 可迭代對(duì)象:
    代碼塊
實(shí)例:遍歷打印一個(gè)list中的元素

names = ['Tom', 'Peter', 'Jerry', 'Jack']
for name in names:
  print(name)

對(duì)于序列,也通過(guò)索引進(jìn)行迭代:

names = ['Tom', 'Peter', 'Jerry', 'Jack']
for i in range(len(names)):
  print(names[i])

執(zhí)行結(jié)果:

Tom
Peter
Jerry
Jack

for...else

與while..else基本一致,不再贅述。

3. 循環(huán)控制語(yǔ)句

循環(huán)控制語(yǔ)句可以更改循環(huán)體中程序的執(zhí)行過(guò)程,如中斷循環(huán)、跳過(guò)本次循環(huán)。

循環(huán)控制語(yǔ)句 說(shuō)明
break 終止整個(gè)循環(huán)
contine 跳過(guò)本次循環(huán),執(zhí)行下一次循環(huán)
pass pass語(yǔ)句是個(gè)空語(yǔ)句,只是為了保持程序結(jié)構(gòu)的完整性,沒(méi)有什么特殊含義。pass語(yǔ)句并不是只能用于循環(huán)語(yǔ)句中,也可以用于分支語(yǔ)句中。
實(shí)例1:遍歷0-9范圍內(nèi)的所有數(shù)字,并通過(guò)循環(huán)控制語(yǔ)句打印出其中的奇數(shù)

for i in range(10):
  if i % 2 == 0:
    continue
  print(i, end=' ')

輸出結(jié)果:1 3 5 7 9

實(shí)例2:通過(guò)循環(huán)控制語(yǔ)句打印一個(gè)列表中的前3個(gè)元素

names = ['Tom', 'Peter', 'Jerry', 'Jack', 'Lilly']
for i in range(len(names)):
  if i >= 3:
    break
  print(names[i])

輸出結(jié)果:

Tom
Peter
Jerry

4. 循環(huán)嵌套

循環(huán)嵌套是指:在一個(gè)循環(huán)體里面嵌入另一循環(huán)。

實(shí)例1:通過(guò)while循環(huán)打印99乘法表

j = 1
while j <= 9:
  i = 1
  while i <= j:
    print('%d*%d=%d' % (i, j, i*j), end='\t')
    i += 1
  print()
  j += 1

實(shí)例2:通過(guò)for循環(huán)打印99乘法表

for j in range(1, 10):
  for i in range(1, j+1):
    print('%d*%d=%d' % (i, j, i*j), end='\t')
    i += 1
  print()
  j += 1

輸出結(jié)果:

1*1=1  
1*2=2   2*2=4  
1*3=3   2*3=6   3*3=9  
1*4=4   2*4=8   3*4=12  4*4=16 
1*5=5   2*5=10  3*5=15  4*5=20  5*5=25 
1*6=6   2*6=12  3*6=18  4*6=24  5*6=30  6*6=36 
1*7=7   2*7=14  3*7=21  4*7=28  5*7=35  6*7=42  7*7=49 
1*8=8   2*8=16  3*8=24  4*8=32  5*8=40  6*8=48  7*8=56  8*8=64 
1*9=9   2*9=18  3*9=27  4*9=36  5*9=45  6*9=54  7*9=63  8*9=72  9*9=81 

相關(guān)文章

  • Python求正態(tài)分布曲線下面積實(shí)例

    Python求正態(tài)分布曲線下面積實(shí)例

    今天小編就為大家分享一篇Python求正態(tài)分布曲線下面積實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-11-11
  • 詳解Python Qt的窗體開(kāi)發(fā)的基本操作

    詳解Python Qt的窗體開(kāi)發(fā)的基本操作

    這篇文章主要介紹了詳解Python Qt的窗體開(kāi)發(fā)的基本操作,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • python中 logging的使用詳解

    python中 logging的使用詳解

    這篇文章主要介紹了python中 logging的使用,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2017-10-10
  • 深入了解python列表(LIST)

    深入了解python列表(LIST)

    這篇文章主要介紹了python列表(LIST)的相關(guān)知識(shí),文中代碼非常詳細(xì),幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-06-06
  • Python簡(jiǎn)單實(shí)現(xiàn)安全開(kāi)關(guān)文件的兩種方式

    Python簡(jiǎn)單實(shí)現(xiàn)安全開(kāi)關(guān)文件的兩種方式

    這篇文章主要介紹了Python簡(jiǎn)單實(shí)現(xiàn)安全開(kāi)關(guān)文件的兩種方式,涉及Python的try語(yǔ)句針對(duì)錯(cuò)誤的判定與捕捉相關(guān)技巧,需要的朋友可以參考下
    2016-09-09
  • Python實(shí)現(xiàn)快速排序的方法詳解

    Python實(shí)現(xiàn)快速排序的方法詳解

    這篇文章主要介紹了Python實(shí)現(xiàn)快速排序的方法,結(jié)合實(shí)例形式詳細(xì)分析了快速排序的思路、原理及Python具體實(shí)現(xiàn)技巧與相關(guān)操作注意事項(xiàng),需要的朋友可以參考下
    2019-10-10
  • Python開(kāi)發(fā)的HTTP庫(kù)requests詳解

    Python開(kāi)發(fā)的HTTP庫(kù)requests詳解

    Requests是用Python語(yǔ)言編寫(xiě),基于urllib,采用Apache2 Licensed開(kāi)源協(xié)議的HTTP庫(kù)。它比urllib更加方便,可以節(jié)約我們大量的工作,完全滿足HTTP測(cè)試需求。Requests的哲學(xué)是以PEP 20 的習(xí)語(yǔ)為中心開(kāi)發(fā)的,所以它比urllib更加Pythoner。更重要的一點(diǎn)是它支持Python3哦!
    2017-08-08
  • Python結(jié)合Window計(jì)劃任務(wù)監(jiān)測(cè)郵件的示例代碼

    Python結(jié)合Window計(jì)劃任務(wù)監(jiān)測(cè)郵件的示例代碼

    這篇文章主要介紹了Python結(jié)合Window計(jì)劃任務(wù)監(jiān)測(cè)郵件的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • python從入門到精通 windows安裝python圖文教程

    python從入門到精通 windows安裝python圖文教程

    這篇文章主要為大家詳細(xì)介紹了python從入門到精通,windows安裝python圖文教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-05-05
  • 詳解如何將python3.6軟件的py文件打包成exe程序

    詳解如何將python3.6軟件的py文件打包成exe程序

    這篇文章主要介紹了詳解如何將python3.6軟件的py文件打包成exe程序,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-10-10

最新評(píng)論