Python 極簡教程(十四)while 迴圈

2021-09-28 10:46:23 字數 2309 閱讀 2450

迴圈簡單來說就是讓一段**按你想要的方式多次執行。軟體擁有強大的運算能力,就是由迴圈提供的。

在 python 中支援的迴圈由兩種:while迴圈 和for迴圈。

現在我們先來講while迴圈。

while 的中文意思為當…的時候。顧名思義,當條件滿足的時候做什麼事情。

來看看 while 語句的格式:

while 條件:

當條件成立的時候,執行這裡的語句 # 注意縮排

while 迴圈,當條件滿足的時候,執行 while 包含的語句塊,直到條件不滿足,則退出迴圈,繼續執行後面的語句。

while 主要用於無法確定迴圈次數的時候:

# 看乙個練習:

# 當乙個變數小於5時,持續列印變數的值,超過5則退出。

i =0

while i <5:

print

(i) i +=

1

while 迴圈很容易出現死迴圈。上面的例子中,如果我們忘了讓 i 的值自增,那麼i < 5會一直成立。print 語句會一直列印。試一試?!

如果不幸出現死迴圈,在 idle 工具中,直接按 ctrl + c 強行結束即可。如果編碼工具,點紅色的方塊,馬上結束執行。

由於 while 容易出現死迴圈,所以我們在實際使用過程中,while 迴圈的使用頻率遠低於我們後面要講的 for 迴圈。

不過對於某些無法確定次數的迴圈,或者需要條件觸發條件結束的情況,用 while 更方便。

# 再看乙個例子

# 輸入乙個數,當這個數的平方大於100時退出,否則持續接收使用者輸入

i =0

while i**

2<=

100:

i =int(

input

('請輸入乙個數:'

))

上面的例子,無法確定使用者會輸入多少次才會出現平方大於100的情況,那麼我們就可以使用 while 迴圈。

另外, while 迴圈也會經常和 break 語句組合來用。

break 語句用於結束當前迴圈

我們可以通過死迴圈加上在合適時機通過 break 退出迴圈來達到我們想要的效果。

把上面的平方例子改一下:

while

true

:# 保持一直迴圈的狀態

i =int(

input

('請輸入乙個數:'))

if i**

2>

100:

break

是不是容易書寫和理解一些?

我們可以把上一節的練習,全部加上 while 迴圈,這樣讓我們可以一直操作,直到我們厭煩為止,而不用每執行一次都要重新再執行。

比如第乙個練習:

輸入乙個int型的資料,判斷這個數是否能被2整除,如果能被2整除,那麼輸出「這個數是偶數」,否則輸出「這個數是奇數」。

# 持續判斷,直到使用者輸入0的時候 ,退出。

while

true

: num =

int(

input

('請輸入乙個數:'))

if num ==0:

print

('你選擇了退出!'

)break

elif num %2==

0:# 乙個數取餘2為0則是偶數

print

('這個數是偶數!'

)elif num %2==

1:print

('這個數是奇數!'

)else

:print

('輸入有誤,請輸入乙個整數!'

)# 試著把 num==0 的條件放在後面,試試還可以退出麼?為什麼?

本節練習:

首先把上一節的練習全部改造為 while 語句,一直執行直到使用你自己希望的方式結束迴圈;

使用 while 迴圈實現 100 以內的累加(包括100)

紙張可以無限次對折,紙張厚度為0.07公釐。問多少次對折至少可以超過8848公尺?(注意單位)

乙個自然數與3的和是5的倍數,與3的差是6的倍數,這個自然數最小是幾?

Shell 極簡教程

vim hello world.sh bin bash echo hello world chmod x sh hello world.sh hello,world bin bash echo hello,world a 1b expr a 1 echo b注意,變數名和等號之間不能有空格,這可能和...

crontab極簡教程

toc crontab簡介 linux crontab是用來定期執行程式的命令。當安裝完成作業系統之後,預設便會啟動此任務排程命令。crontab常用命令 crontab e 開啟vi編輯器,編寫乙個定時任務,退出vi後,若vi內容不為空,則會建立乙個任務。crontab l 檢視當前已經建立的定時...

crontab極簡教程

目錄linux crontab是用來定期執行程式的命令。當安裝完成作業系統之後,預設便會啟動此任務排程命令。建立兩個定時任務。第乙個,一分鐘執行一次,使用echo輸出一串字元 第二個,兩分鐘執行一次,使用echo輸出另一串字元。在linux 的shell 中輸入crontab e 命令 echo o...