Python 基礎知識7 迴圈語句

2021-10-07 22:49:51 字數 3316 閱讀 4403

一、迴圈語句

1、while迴圈

(1)語法:

while 條件表示式:

**塊(2)執行流程:

條件表示式恒為true的迴圈語句,稱為死迴圈,它會一直執行,慎用!

(3)迴圈的三個要件(表示式)

–初始化表示式,通過初始化表示式初始化乙個變數

–條件表示式用來設定迴圈執行的條件

–更新表示式,修改初始化變數的值

i=

0while i<10:

i+=1print

(i,"hello"

)else

:print

("jisuanji"

)

2、迴圈的巢狀

(1)列印出如下圖形***

*******

*****

i=

0while i<5:

j=0while jprint

('*'

,end=

' ')

j +=

1print()

i +=

1

3、例題1:

水仙花數是指乙個n位數(n>=3),它的每個位上的數字的n次冪之和等於它本身(例如:13+53+3**3=153)

求1000以內所有的水仙花數。

#獲取1000以內的三位數

i=100

hile i<

1000

:#假設i的百位數為a,十位數為b,個位數為c

#求i的百位數

a=i//

100#求i的十位數

b=i//10%

10#求i的個位數

c=i%

10#判斷i是否為水仙花數

if a**

3+b**

3+c**

3==i :

print

(i) i +=

1

例題2:

獲取使用者輸入的任意數,判斷其是否為質數。質數是只能被1和它本身整除的數,1不是質數也不是合數。

num =

int(

input

('輸入乙個任意的大於1的整數:'))

#判斷num是否是質數,只能被1和它本身整除的數就是質數

#獲取到所有的可能整除num的整數i=2

#建立乙個變數,用來記錄num是否是質數,預設num是質數

flag =

true

while i#判斷num能否被i整除

#如果num能被i整除,則說明num一定不是質數

if num % i ==0:

#一旦進入判斷,則證明num不是質數,則需要將flag修改為false

flag=flase

i +=

1if flag :

print

(num,

'是質數'

)else

:print

(num,

'不是質數'

)

例題3:

列印99乘法表

#建立乙個外層迴圈來控制圖形的高度i=0

whike i<9:

i +=

1#建立乙個內層迴圈來控制圖形的高度

j=0while j<1:

j +=

1print

(f'*= '

,end=

' ')

print

()

例題四:

求100以內所有的質數

#建立乙個迴圈,求1-100以內所有的質數i=2

while i<=

100:

#建立乙個變數,記錄i的狀態,預設i為質數

flag=

true

#判斷i是否是質數

#獲取所有可能成為i的因數的數

j=2while j#判斷i是否能被j整除

if i % j==0:

# i能被j整除,說明i不是質數,修改flag為flase

flag=flase

j +=

1#驗證結果並輸出

if flag :

print

(i) i +=

1

例題五:

質數練習的第一次優化

# 模組:通過模組可以對python進行擴充套件

# 引入乙個time模組,來統計程式執行的時間

from time import

*# time()函式可以用來獲取當前的時間,返回的單位是秒

# 獲取程式開始的時間

begin = time ()i=

2while i <

100000

: flag =

true

j=2while jif i % j ==

0 flag = flase

***# 一旦進入判斷,則證明i一定不是質數,此時內層迴圈沒有繼續執行的必要******

# 使用break來退出內層的迴圈******

break***

j +=

1if flag

pass

i +=

1# 獲取程式結束的時間

end = time (

)#計算程式執行的時間

print

("程式執行花費了:"

,end - begin,

"秒")

例題六:

質數練習的第二次優化

i=

2while i <

10000

flag =

true

j =2**

*while j <= i **

0.5:***

if i % j ==

0 flag = flase

***# 一旦進入判斷,則證明i一定不是質數,此時內層迴圈沒有繼續執行的必要******

# 使用break來退出內層的迴圈******

break***

j +=

1if flag

pass

i +=

1

二、break 和 continue

1、 break可以用來立即退出迴圈語句(包括else)

continue可以用來跳過檔次迴圈

break 和 continue都是只對離他最近的迴圈起作用

2、pass 是用來在判斷或迴圈語句中佔位的

python基礎知識 迴圈語句

range函式 for迴圈 第一種 for 臨時變數 in 可迭代物件 語句1語句2 第二種 for 臨時變數 in 可迭代物件 語句1語句2 else 語句3可迭代物件 字串 元組 列表 字典 利用range函式 一般情況 在迴圈中,臨時變數依次獲得可迭代物件的值,一遍一遍重複迴圈執行語句1 語句...

java基礎知識 迴圈語句

2011 11 17 迴圈語句 迴圈語句可以在滿足迴圈條件的情況下,反覆執行某一段 這段被重複執行的 塊被稱為迴圈體。當反覆執行這段迴圈體時,需要在適當的時候把迴圈條件改為假。從而結束迴圈,否則迴圈將一直執行下去,形成死迴圈。迴圈語句可能包含如下4個部分 初始化語句 init statements ...

基礎知識 迴圈語句 while

while語句的形式 while 表示式 語句 表示式應為乙個關係表示式或者邏輯值,表示式的值應該是乙個邏輯值真或者假。當表示式為真時開始執行迴圈語句,當表示式為假時退出迴圈。迴圈每次執行完畢回到表示式再次判斷表示式。注意1.表示式不能為空,表示式為空是非法的。2.表示式可以用0表示假,用非0表示真...