前言
今天來說下python中的迴圈。迴圈的意思是什麼,以環形、迴路或軌道執行;沿曲折的路線執行;特指執行一周而回到原處。這是百度給出的迴圈的意思。在python中,就是重複執行你給的指令,直至結束。我們現在看下,在python中,迴圈就是:while;它有它的規則結構,就是while + 條件(冒號,這個別忘記了。): 意思是,當條件不成立時,不迴圈。舉個例子說明一下:
我們先來說下這個例子的意思,首先,while+條件: 這個已經帶入到了**中,這個**的意思是當迴圈10次1的時候 ,跳出迴圈。先定義了num = 1 那麼num 就是1的意思,然後while迴圈,當num小於等10 的時候,列印num 的數。break跳出,終止迴圈。為什麼要終止迴圈,我們來看下不加break的測試結果:
就會無線次一直迴圈。這就是死迴圈。為了避免死迴圈的發生,就加了乙個break 。break的用法就是,當你想讓上一段迴圈語句結束時,就可以用到break,那麼在break以下的**,也不會被執行。
上面說到了while的用法。為了鞏固這個用法,我們巢狀使用if elif 加上while一起使用看下出來的效果是什麼樣的。我們有在上一章中說到,if elis是結合一起使用的。那麼中間是可以巢狀elif的,再加上迴圈while,我們來舉個例子,說明一下:
這是乙個猜年齡的遊戲,意思就是,當你猜到輸入的年齡是60的時候,終止迴圈,如果你輸入的年齡大於60,提示太大了,如果小於60,提示太小了。我們來逐個看下,每一段**的意思。首先,我們定義變數,age年齡是60歲。定義它,是為了接下來要猜測年齡做準備。while true :這個意思是無限迴圈。這個的用法是,如果你所需的條件,等於你所輸出的條件是正確的時候,就break,終止迴圈,否則就是無限迴圈。(是不是還不太懂,沒關係,這個就記住是無限迴圈的意思。往後看就明白了。)接下來的這一段,user_input_age = int(input('age is :'))意思就是,定義你要輸如數字的變數,int,這個解釋我在上一章講過,就是把字串變成資料時使用。簡單理解,就是你要輸出的數字。if 判斷,如果,user_input_ag輸入的數字,等於你定義的年齡60的時候,那就列印出來yes,那這個條件就是為真。是正確的,真實的,那麼就break,終止迴圈。elif,再如果,user_input_age> age:這句話意思就是,如果你輸出的年齡大於定義的年齡60的時候,那就列印出,太大了。else,其它的,就是小於60的,那就是輸出太小了。注意,else,是當while迴圈後執行,只在break時不執行。意思就是說如果你加了break ,那就終止了,不會再執行了。那麼continue的意思呢,跳過當次迴圈,繼續迴圈的意思。如果你不加continue,就會無限迴圈,結果就跟上面的1程式設計客棧11111一樣,無限迴圈你輸入的年齡。然後print(『'end『')結束。我們來看下這段**執行的結果:
while true的意思就是,如果你的條件為真了,是正確的結果,你break停止迴圈了時候,就會進入下乙個迴圈。
我們進一步來說下while使用巢狀迴圈的方法,巢狀迴圈,就是迴圈套迴圈使用。比如,我們輸入數字幾,就打出幾行幾列的#號鍵:
首先我們先定義好行數:height = int(input('height:'))
然後 定義好輸入的列數:width = int(input('width:'))
迴圈條件定義:num_height=1這是行數迴圈。同理列數迴圈定義也是1。
用迴圈方式,當num_程式設計客棧height小於等於你的行數。就是小於或者等於你輸入的數字。就列印出來#號鍵,並且加空格。迴圈num_height +=1的意思意思就是。我一開始定義了unm_height是1,每次都加一迴圈。但是條件是小於我輸入的數字。例如,我輸入的數字是個3,那麼每次迴圈加1,第一次迴圈是1,1小於3,列印出第乙個#號,再一次迴圈,1+1=2,2小於3,列印出第二個#,第三個迴圈2+1=3,3等於3 列印出第三個#。print ("#",end=" "),這個意思是列印#號鍵,並且以乙個空格分隔開。連著print()就是換行的意思,(結果會看到什麼是換行)當乙個條件執行完畢,再執行下乙個條件,就是說先執行我第一定義的行數。再執行列數。行數執行完畢,同理,列也是一樣的意思。我先定義好你即將輸入的列數,你輸入多少就是多少。然後再用列數每次迴圈加一。假定也是3,那就是每次迴圈加1,直到等於3,為止。迴圈結束。結果就是:
在這就能看到換行的意義了吧。
上面只是簡單介紹了巢狀迴圈的用法,我們可以公升級一下,利用*星號鍵,來組乙個倒三角形。我們看下**,然後解釋一下:
根據**的描述,先定義line的值,我定義為5,迴圈line,當line大於0時,我加了乙個注釋的意思就是列印出來五列*。就是如圖的結果:
但是我想要的是第一行是五個,第二行四個,第三行三個,第二行兩個,第一行乙個。就是:
這樣的效果。那第一列出來的是五個,line是不能動的值。那就需要迴圈套用迴圈,再寫乙個迴圈定義t程式設計客棧mp 等於line,就是tmp也是等於5,然後,內迴圈tmp,並且以乙個空格換行的形式輸出*號鍵。tmp= tmp -1的意思是,迴圈一次外迴圈的line的值賦予tmp減去一。比如,line是5時,出來五個星,但是line - =1就是每次迴圈,第一次迴圈是5個星,當line -=1 時,賦值給到tmp,那麼tmp也會減去1.內迴圈減去1,也就是4。直到,tmp無法大於0,迴圈結束。
九九乘法表就是套用上面的迴圈,如圖:
這個巢狀迴圈的意思,跟上面星星的意思是一樣的。很簡單吧~~~反正我是燒腦了半天~~~~~~ 敬請期待下一集。
總結本文標題: python基礎教程之while迴圈
本文位址: /jiaoben/python/268444.html
python基礎教程之Hello World
python命令列 假設你已經安裝好了python,那麼在linux命令列輸入程式設計客棧 複製 如下 python 將直接進入python。後面輸入 複製 如下 print hello world 可以看到,隨後在螢幕上輸出 複製 如下 hello world print是乙個常用函式,其功能就是...
Python 基礎教程之Python 簡介
python 是一種解釋型 物件導向 動態資料型別的高階程式語言。python 是乙個高層次的結合了解釋性 編譯性 互動性和物件導向的指令碼語言。python 的設計具有很強的可讀性,相比其他語言經常使用英文關鍵字,其他語言的一些標點符號,它具有比其他語言更有特色語法結構。python 是一種解釋型...
Python 基礎教程之Python 注釋
確保對模組,函式,方法和行內注釋使用正確的風格 python中的注釋有單行注釋和多行注釋 python中單行注釋以 開頭,例如 這是乙個注釋 print hello,world 多行注釋用三個單引號 或者三個雙引號 將注釋括起來,例如 這是多行注釋,用三個單引號 這是多行注釋,用三個單引號 這是多行...