python控制流_Python学习--控制流
控制流
在Python中有三種控制流語句——if、while和for。
if語句
if語句用來檢驗一個條件,如果條件為真,我們運行一塊語句(稱為if-塊), 否則我們處理另外一塊語句(稱為else-塊)。 else 從句是可選的。
1.使用if語句
if語句的使用方式參見如下例子:
num = 18
guess = int(raw_input('Enter an Integer: '))
# 使用if語句開始
if num == guess:
print 'You are right!'
else :
print 'You are wrong!'
print 'Done!'
輸出
Enter an Integer: 19
You are wrong!
Done!
Enter an Integer: 18
You are right!
Done!
2.它如何工作
在這個程序中,我們從用戶處得到猜測的數(shù),然后檢驗這個數(shù)是否是我們手中的那個。我們把變量num設(shè)置為我們想要的任何整數(shù),在這個例子中是18。然后,我們使用raw_input()函數(shù)取得用戶猜測的數(shù)字。函數(shù)只是重用的程序段。
我們?yōu)閮?nèi)建的raw_input函數(shù)提供一個字符串,這個字符串被打印在屏幕上,然后等待用戶的輸入。一旦我們輸入一些東西,然后按回車鍵之后,函數(shù)返回輸入。對于raw_input函數(shù)來說是一個字符串。我們通過int把這個字符串轉(zhuǎn)換為整數(shù),并把它存儲在變量guess中。事實上,int是一個類,不過你想在對它所需了解的只是它把一個字符串轉(zhuǎn)換為一個整數(shù)(假設(shè)這個字符串含有一個有效的整數(shù)文本信息)。
接下來,我們將用戶的猜測與我們選擇的數(shù)做比較。如果他們相等,我們打印一個成功的消息。注意我們使用了縮進層次來告訴Python每個語句分別屬于哪一個塊。這就是為什么縮進在Python如此重要的原因。
注意:
1)if語句在結(jié)尾處包含一個冒號——我們通過它告訴Python下面跟著一個語句塊。然后,我們檢驗猜測是否小于我們的數(shù),如果是這樣的,我們告訴用戶它的猜測大了一點。我們在這里使用的是else從句,也可以使用elif從句,它事實上把兩個相關(guān)聯(lián)的if else-if else語句合并為一個if-elif-else語句。這使得程序更加簡單,并且減少了所需的縮進數(shù)量。
2)elif和else從句都必須在邏輯行結(jié)尾處有一個冒號,下面跟著一個相應(yīng)的語句塊(當(dāng)然還包括正確的縮進)。我們也可以在一個if塊中使用另外一個if語句,等等——這被稱為嵌套的if語句。
elif和else部分是可選的。
在Python執(zhí)行完一個完整的if語句以及與它相關(guān)聯(lián)的elif和else從句之后,它移向if語句塊的下一個語句。在這個例子中,這個語句塊是主塊。程序從主塊開始執(zhí)行,而下一個語句是print 'Done'語句。在這之后,Python看到程序的結(jié)尾,簡單的結(jié)束運行。
另外,在Python中沒有switch語句。你可以使用if..elif..else語句來完成同樣的工作(在某些場合,使用字典會更加快捷。)
while語句
只要在一個條件為真的情況下,while語句允許你重復(fù)執(zhí)行一塊語句。while語句是所謂循環(huán)語句的一個例子。while語句有一個可選的else從句。
1.使用while語句
while語句的使用方法參見如下例子:
num = 18
running = true
#使用while語句開始
while running:
guess = int(raw_input('Enter an Integer: '))
if num == guess:
print 'You are right!'
running = false
elif num < guess:
print 'You guess a little higher!'
else :
print 'You guess a little lower!'
else
print 'The running is over!'
print 'Done!'
輸出
Enter an Integer: 19
You guess a little higher!
Enter an Integer: 18
You are right!
The running is over!
Done!
2.它如何工作
在這個程序中,我們?nèi)匀皇褂昧瞬聰?shù)游戲作為例子,但是這個例子的優(yōu)勢在于用戶可以不斷的猜數(shù),直到他猜對為止。這樣就不需要像前面那個例子那樣為每次猜測重復(fù)執(zhí)行一遍程序。
我們把raw_input和if語句移到了while循環(huán)內(nèi),并且在while循環(huán)開始前把running變量設(shè)置為True。首先,我們檢驗變量running是否為True,然后執(zhí)行后面的while-塊。在執(zhí)行了這塊程序之后,再次檢驗條件,在這個例子中,條件是running變量。如果它是真的,我們再次執(zhí)行while-塊,否則,我們繼續(xù)執(zhí)行可選的else-塊,并接著執(zhí)行下一個語句。
當(dāng)while循環(huán)條件變?yōu)镕alse的時候,else塊才被執(zhí)行。如果while循環(huán)有一個else從句,它將始終被執(zhí)行,除非你的while循環(huán)將永遠循環(huán)下去不會結(jié)束!
注意:
1)True和False被稱為布爾類型。
2)可以在while循環(huán)中使用一個else從句。
for循環(huán)
for..in是另外一個循環(huán)語句,它在一序列的對象上遞歸即逐一使用隊列中的每個項目。
1.使用for語句
for語句的使用方法參見如下例子:
for i in range ( 1 , 5 ):
print i
else :
print 'The for loop is over'
輸出
總結(jié)
以上是生活随笔為你收集整理的python控制流_Python学习--控制流的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: c++ map 修改value_干货 |
- 下一篇: python与人工智能的关系_pytho