while是執(zhí)行代碼的一個(gè)很重要的程序流程甘桑,它起到一個(gè)循環(huán)的作用丛晌。那么具體的作用是什么呢签餐?我們來看下圖:
這是運(yùn)用while執(zhí)行代碼編輯出來的星星等邊三角形,是最經(jīng)典的例子愚战。
那我們就來具體看看它是如何打印出星星等邊三角形的:
首先定義一個(gè)變量娇唯,代表要打印的星星的行數(shù):
接下來就可以直接輸入while和它要循環(huán)的條件了,因?yàn)槲覀円蛴?行星星寂玲,所以就要使定義的變量不能大于5也就是小于等于5:
然后再定以每行要打印的星星的數(shù)量塔插,隨便定義個(gè)變量:
row代表要打印的星星的數(shù)量。
接下來拓哟,最重要的步驟到了想许,while嵌套:嵌套要相比于第一個(gè)while向內(nèi)縮進(jìn)4個(gè)字符,表示它屬于第一個(gè)while循環(huán),這就是嵌套伸刃。
從第一幅圖可以看出谎砾,每一行的星星和它的行數(shù)相等,但比上一行多一個(gè)捧颅,所以我們就要用行數(shù)和星星來比較景图,即星星數(shù)不能大于行數(shù),也就是row<=count碉哑。
基本的循環(huán)條件都編輯完成挚币,這樣就可以輸出了,也就是可以打印星星了扣典。如上圖妆毕,其中end=" "意思是不換行,因?yàn)閜rint自帶換行功能贮尖,所以在這一行星星沒有打印完之前不能讓它換行笛粘。同時(shí)row+=1意為,每循環(huán)一次湿硝,打印的星星數(shù)要增加1薪前,直到不滿足循環(huán)條件,本行星星打印結(jié)束关斜,開始下一行示括。
最后這個(gè)輸出我們可以看到什么內(nèi)容都沒有,這意為一行的星星打印完就要換行打印下一行了痢畜,不能繼續(xù)在上一行后面打印垛膝,這樣就是錯(cuò)誤的。同時(shí)丁稀,行數(shù)每循環(huán)一次就增加1吼拥,直到增加到5,我們的循環(huán)條件就完成了线衫。
那么我們來看一下完整的代碼:
很簡單的對(duì)不對(duì)凿可。保存退出后用Python3執(zhí)行一下就會(huì)出現(xiàn)你想要的星星直角三角形了。