新聞中心
程序結(jié)構(gòu)
計(jì)算機(jī)在解決某個具體問題時,主要有三種形式,分別是順序控制執(zhí)行所有語句、選擇執(zhí)行部分語句和循環(huán)執(zhí)行部分語句。根據(jù)以上三種解決問題的形式,程序設(shè)計(jì)過程中,也有三種基本結(jié)構(gòu),分別為順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。
順序控制
順序結(jié)構(gòu)很好理解,就是計(jì)算機(jī)按照程序語句的順序由上到下依次執(zhí),每一條語句都會被忠實(shí)的執(zhí)行,這樣就有很大的局限性。如果一個問題可能有多種情況發(fā)生,而實(shí)際只會發(fā)生一種,順序結(jié)構(gòu)就不能做這一類的選擇。
選擇控制
滿足條件即執(zhí)行,不滿足則跳過。
if …
if 這個英文單詞的中文意思是“如果”,在程序編寫中,也就是如果…就…,
1
2
if expression:
do some things
復(fù)制
expression 是一個表達(dá)式,這個表達(dá)式的結(jié)果為真(True),則執(zhí)行 do somthing;如果為假(False),則跳過 do something 語句塊。
if … else …
if 語句給出了滿足條件之后應(yīng)該做什么,而沒有給出不滿足條件應(yīng)該做什么。所以,有衍生出了 else 語句,
1
2
3
4
if expression:
do some things
else:
do some things
復(fù)制
if … else … 語句給出了如果 expression 表達(dá)式的結(jié)果為假(False)時,程序應(yīng)該做什么事。
if … elif … else…
如果一個問題有多種可能的結(jié)果供選擇,就需要使用 elif 語句,
1
2
3
4
5
6
7
if expression 1:
do some things
elif expression 2:
do some things
...
else:
do some things
復(fù)制
該語句用于從眾多可能的選項(xiàng)中挑選一個,也就是如果第一個表達(dá)式滿足條件,其后的語句就會被執(zhí)行,然后跳出整個結(jié)構(gòu),無論 elif 的表達(dá)式是否為真(即使以后的 elif 的表達(dá)式都為真,其后的語句也不會被執(zhí)行)。只有在前面所有的表達(dá)式都為假時,才會執(zhí)行 else 后的語句。
循環(huán)控制
如果滿足條件則進(jìn)入循環(huán)體,循環(huán)體執(zhí)行完畢后,再次判斷條件是否滿足,如果滿足則再次進(jìn)入循環(huán)體,反之則執(zhí)行循環(huán)體之后的語句。
while
while 循環(huán)通過一個條件來控制是否要反復(fù)執(zhí)行循環(huán)體,
1
2
while expression:
do some things
復(fù)制
expression 首次為真時,執(zhí)行循環(huán)體,執(zhí)行完畢之后再次計(jì)算 expression ,如果還為真則再次執(zhí)行循環(huán)體;如果為假,則執(zhí)行循環(huán)體之后的語句。
for
for 循環(huán)是一個依次從復(fù)執(zhí)行的循環(huán),通常用于枚舉或遍歷序列,以及迭代對象中的元素,
1
2
for iteration in objects:
do some things
復(fù)制
iteration 是一個個從 objects 中取出的可迭代變量,即只要 iteration 存在于 objects 中,則執(zhí)行循環(huán)體。
例如,我們要計(jì)算 1 到 100 的累加和,就可以使用 for 循環(huán),
1
2
3
4
5
6
result = 0
for number in range(1, 101):
result += number
print(result)
復(fù)制
其中,range() 函數(shù)可在一定范圍內(nèi)生成一系列連續(xù)的整數(shù),
1
range(start, end, step)
復(fù)制
start 用于指定起始值,默認(rèn)值為 0;end 用于指定結(jié)束的值;step 用于指定步長,即連續(xù)兩個數(shù)之間的間隔(它們的差的絕對值),默認(rèn)值為 1 。
在 Python 編程中,像 range() 這一類有起始值和結(jié)束值得函數(shù),其取值范圍都是 起始值 <= x < 結(jié)束值
當(dāng)然了,上面的語句我們也可以使用 while 語句實(shí)現(xiàn),
1
2
3
4
5
6
7
8
result = 0
number = 1
while number < 101:
result += number
number += 1
print(result)
復(fù)制
for 語句還可以來遍歷序列,
1
2
3
4
list = ["hello", "python", 2019, 8, 1]
for item in list:
print(item, end="\t")
復(fù)制
嵌套
在一個選擇(循環(huán))控制語句中,還有若干個選擇(循環(huán))控制語句,被稱為選擇(循環(huán))嵌套語句,理論上是可以無限嵌套的。
1
2
3
4
for i in range(1, 10):
for j in range(1, i+1):
print(str(j) + "x" + str(i) + "=" + str(j * i) + "\t", end="")
print()
復(fù)制
跳轉(zhuǎn)語句
break
break 語句可以終止當(dāng)前的循環(huán),一般結(jié)合 if 語句搭配使用,即在滿足特定條件時跳出當(dāng)前循環(huán),繼續(xù)執(zhí)行循環(huán)之后的語句。
1
2
3
4
5
while expression:
do some things
if condition:
break
復(fù)制
或者,
1
2
3
4
5
for iteration in objects:
do some things
if condition:
break
復(fù)制
continue
continue 語句無法結(jié)束循環(huán),只能跳出本次循環(huán),提前執(zhí)行下一次循環(huán),
1
2
3
4
5
while expression:
do some things
if condition:
continue
復(fù)制
或者,
1
2
3
4
5
for iteration in objects:
do some things
if condition:
continue
復(fù)制
pass 語句
pass 語句沒有實(shí)際作用,只起到占位的作用。例如,在 if 結(jié)構(gòu)中,如果滿足條件時就執(zhí)行某系語句,而當(dāng)還沒有想好這些語句如何編寫時,可以先使用 pass 占位,保證程序可以正常向下運(yùn)行,待想好后在替換 pass 即可。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
網(wǎng)頁題目:Python3學(xué)習(xí)筆記:流程控制-創(chuàng)新互聯(lián)
網(wǎng)站網(wǎng)址:http://www.dlmjj.cn/article/dgeigs.html