溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

python基礎(chǔ)教程之while循環(huán)

發(fā)布時間:2020-09-11 18:31:52 來源:腳本之家 閱讀:143 作者:耿寶橙的糖 欄目:開發(fā)技術(shù)

前言

今天來說下python中的循環(huán)。循環(huán)的意思是什么,以環(huán)形、回路或軌道運行;沿曲折的路線運行;特指運行一周而回到原處。這是百度給出的循環(huán)的意思。在python中,就是重復(fù)執(zhí)行你給的指令,直至結(jié)束。我們現(xiàn)在看下,在python中,循環(huán)就是:while;它有它的規(guī)則結(jié)構(gòu),就是while + 條件(冒號,這個別忘記了。): 意思是,當(dāng)條件不成立時,不循環(huán)。舉個例子說明一下:

python基礎(chǔ)教程之while循環(huán)

我們先來說下這個例子的意思,首先,while+條件: 這個已經(jīng)帶入到了代碼中,這個代碼的意思是當(dāng)循環(huán)10次1的時候 ,跳出循環(huán)。先定義了num = 1 那么num 就是1的意思,然后while循環(huán),當(dāng)Num小于等10 的時候,打印num 的數(shù)。break跳出,終止循環(huán)。為什么要終止循環(huán),我們來看下不加break的測試結(jié)果:

python基礎(chǔ)教程之while循環(huán)

就會無線次一直循環(huán)。這就是死循環(huán)。為了避免死循環(huán)的發(fā)生,就加了一個break 。break的用法就是,當(dāng)你想讓上一段循環(huán)語句結(jié)束時,就可以用到break,那么在break以下的代碼,也不會被執(zhí)行。

上面說到了while的用法。為了鞏固這個用法,我們嵌套使用if elif 加上while一起使用看下出來的效果是什么樣的。我們有在上一章中說到,if elis是結(jié)合一起使用的。那么中間是可以嵌套elif的,再加上循環(huán)while,我們來舉個例子,說明一下:

python基礎(chǔ)教程之while循環(huán)

這是一個猜年齡的游戲,意思就是,當(dāng)你猜到輸入的年齡是60的時候,終止循環(huán),如果你輸入的年齡大于60,提示太大了,如果小于60,提示太小了。我們來逐個看下,每一段代碼的意思。首先,我們定義變量,age年齡是60歲。定義它,是為了接下來要猜測年齡做準(zhǔn)備。while True :這個意思是無限循環(huán)。這個的用法是,如果你所需的條件,等于你所輸出的條件是正確的時候,就break,終止循環(huán),否則就是無限循環(huán)。(是不是還不太懂,沒關(guān)系,這個就記住是無限循環(huán)的意思。往后看就明白了。)接下來的這一段,user_input_age = int(input('age is :'))意思就是,定義你要輸如數(shù)字的變量,int,這個解釋我在上一章講過,就是把字符串變成數(shù)據(jù)時使用。簡單理解,就是你要輸出的數(shù)字。if 判斷,如果,user_input_age輸入的數(shù)字,等于你定義的年齡60的時候,那就打印出來yes,那這個條件就是為真。是正確的,真實的,那么就break,終止循環(huán)。elif,再如果,user_input_age> age:這句話意思就是,如果你輸出的年齡大于定義的年齡60的時候,那就打印出,太大了。else,其它的,就是小于60的,那就是輸出太小了。注意,else,是當(dāng)while循環(huán)后執(zhí)行,只在break時不執(zhí)行。意思就是說如果你加了break ,那就終止了,不會再執(zhí)行了。那么continue的意思呢,跳過當(dāng)次循環(huán),繼續(xù)循環(huán)的意思。如果你不加continue,就會無限循環(huán),結(jié)果就跟上面的111111一樣,無限循環(huán)你輸入的年齡。然后print(‘'END‘')結(jié)束。我們來看下這段代碼執(zhí)行的結(jié)果:

python基礎(chǔ)教程之while循環(huán)

while True的意思就是,如果你的條件為真了,是正確的結(jié)果,你break停止循環(huán)了時候,就會進(jìn)入下一個循環(huán)。

我們進(jìn)一步來說下while使用嵌套循環(huán)的方法,嵌套循環(huán),就是循環(huán)套循環(huán)使用。比如,我們輸入數(shù)字幾,就打出幾行幾列的#號鍵:

python基礎(chǔ)教程之while循環(huán)

首先我們先定義好行數(shù):height = int(input('Height:'))

然后 定義好輸入的列數(shù):width = int(input('Width:'))

循環(huán)條件定義:num_height=1這是行數(shù)循環(huán)。同理列數(shù)循環(huán)定義也是1。

用循環(huán)方式,當(dāng)num_height小于等于你的行數(shù)。就是小于或者等于你輸入的數(shù)字。就打印出來#號鍵,并且加空格。循環(huán)num_height +=1的意思意思就是。我一開始定義了unm_height是1,每次都加一循環(huán)。但是條件是小于我輸入的數(shù)字。例如,我輸入的數(shù)字是個3,那么每次循環(huán)加1,第一次循環(huán)是1,1小于3,打印出第一個#號,再一次循環(huán),1+1=2,2小于3,打印出第二個#,第三個循環(huán)2+1=3,3等于3 打印出第三個#。print ("#",end=" "),這個意思是打印#號鍵,并且以一個空格分隔開。連著print()就是換行的意思,(結(jié)果會看到什么是換行)當(dāng)一個條件執(zhí)行完畢,再執(zhí)行下一個條件,就是說先執(zhí)行我第一定義的行數(shù)。再執(zhí)行列數(shù)。行數(shù)執(zhí)行完畢,同理,列也是一樣的意思。我先定義好你即將輸入的列數(shù),你輸入多少就是多少。然后再用列數(shù)每次循環(huán)加一。假定也是3,那就是每次循環(huán)加1,直到等于3,為止。循環(huán)結(jié)束。結(jié)果就是:

python基礎(chǔ)教程之while循環(huán)

在這就能看到換行的意義了吧。

上面只是簡單介紹了嵌套循環(huán)的用法,我們可以升級一下,利用*星號鍵,來組一個倒三角形。我們看下代碼,然后解釋一下:

python基礎(chǔ)教程之while循環(huán)

根據(jù)代碼的描述,先定義Line的值,我定義為5,循環(huán)line,當(dāng)line大于0時,我加了一個注釋的意思就是打印出來五列*。就是如圖的結(jié)果:

python基礎(chǔ)教程之while循環(huán)python基礎(chǔ)教程之while循環(huán)

但是我想要的是第一行是五個,第二行四個,第三行三個,第二行兩個,第一行一個。就是:

python基礎(chǔ)教程之while循環(huán)

這樣的效果。那第一列出來的是五個,line是不能動的值。那就需要循環(huán)套用循環(huán),再寫一個循環(huán)定義tmp 等于line,就是tmp也是等于5,然后,內(nèi)循環(huán)tmp,并且以一個空格換行的形式輸出*號鍵。tmp= tmp -1的意思是,循環(huán)一次外循環(huán)的line的值賦予tmp減去一。比如,line是5時,出來五個星,但是line - =1就是每次循環(huán),第一次循環(huán)是5個星,當(dāng)line -=1 時,賦值給到tmp,那么tmp也會減去1.內(nèi)循環(huán)減去1,也就是4。直到,tmp無法大于0,循環(huán)結(jié)束。

九九乘法表就是套用上面的循環(huán),如圖:

python基礎(chǔ)教程之while循環(huán)

python基礎(chǔ)教程之while循環(huán)

這個嵌套循環(huán)的意思,跟上面星星的意思是一樣的。很簡單吧~~~反正我是燒腦了半天~~~~~~ 敬請期待下一集。

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對億速云的支持。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI